mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-29 04:17:55 +01:00
- return bool from Thread::trySleep()
- updated documentiation - amended tests - updated CHANGELOG
This commit is contained in:
@@ -137,17 +137,17 @@ private:
|
||||
class TrySleepRunnable : public Runnable
|
||||
{
|
||||
public:
|
||||
TrySleepRunnable() : _counter(0)
|
||||
TrySleepRunnable() : _counter(0), _sleepy(true)
|
||||
{
|
||||
}
|
||||
|
||||
void run()
|
||||
{
|
||||
trySleep(300000);
|
||||
_sleepy = !trySleep(300000);
|
||||
++_counter;
|
||||
trySleep(300000);
|
||||
_sleepy = !trySleep(300000);
|
||||
++_counter;
|
||||
trySleep(10);
|
||||
_sleepy = !trySleep(10);
|
||||
++_counter;
|
||||
}
|
||||
|
||||
@@ -156,8 +156,14 @@ public:
|
||||
return _counter;
|
||||
}
|
||||
|
||||
bool isSleepy() const
|
||||
{
|
||||
return _sleepy;
|
||||
}
|
||||
|
||||
private:
|
||||
int _counter;
|
||||
bool _sleepy;
|
||||
};
|
||||
|
||||
|
||||
@@ -295,23 +301,27 @@ void ThreadTest::testTrySleep()
|
||||
{
|
||||
Thread thread;
|
||||
TrySleepRunnable r;
|
||||
assert(r.isSleepy());
|
||||
assert(!thread.isRunning());
|
||||
assert(r.counter() == 0);
|
||||
thread.start(r);
|
||||
assert(thread.isRunning());
|
||||
assert(r.counter() == 0);
|
||||
assert(r.isSleepy());
|
||||
Thread::sleep(100);
|
||||
assert(r.counter() == 0);
|
||||
thread.wakeUp();
|
||||
Thread::sleep(10);
|
||||
assert(r.isSleepy());
|
||||
thread.wakeUp(); Thread::sleep(10);
|
||||
assert(r.counter() == 1);
|
||||
assert(r.isSleepy());
|
||||
Thread::sleep(100);
|
||||
assert(r.counter() == 1);
|
||||
thread.wakeUp();
|
||||
Thread::sleep(10);
|
||||
thread.wakeUp(); Thread::sleep(10);
|
||||
assert(r.counter() == 2);
|
||||
assert(r.isSleepy());
|
||||
Thread::sleep(100);
|
||||
assert(r.counter() == 3);
|
||||
assert(!r.isSleepy());
|
||||
assert(!thread.isRunning());
|
||||
thread.wakeUp();
|
||||
assert(!thread.isRunning());
|
||||
|
||||
Reference in New Issue
Block a user