summaryrefslogtreecommitdiffstats
path: root/src/server/Worker.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2013-02-04 00:54:25 +0000
committerDavid Robillard <d@drobilla.net>2013-02-04 00:54:25 +0000
commit46c3a486eee4b2ef69d9cc4f9e2701082c64d7c8 (patch)
treeecf7a89fb1c28a619106dd78ccd257a1ff52c70a /src/server/Worker.cpp
parent69f98d63f5bd22c82208fef5fbc2a61613541bd7 (diff)
downloadingen-46c3a486eee4b2ef69d9cc4f9e2701082c64d7c8.tar.gz
ingen-46c3a486eee4b2ef69d9cc4f9e2701082c64d7c8.tar.bz2
ingen-46c3a486eee4b2ef69d9cc4f9e2701082c64d7c8.zip
Replace Raul::thread with std::thread.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5047 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/Worker.cpp')
-rw-r--r--src/server/Worker.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/server/Worker.cpp b/src/server/Worker.cpp
index 8afc8a20..ce7ba833 100644
--- a/src/server/Worker.cpp
+++ b/src/server/Worker.cpp
@@ -101,28 +101,26 @@ Worker::Schedule::feature(World* world, Node* n)
}
Worker::Worker(Log& log, uint32_t buffer_size)
- : Raul::Thread()
- , _schedule(new Schedule())
+ : _schedule(new Schedule())
, _log(log)
, _sem(0)
, _requests(buffer_size)
, _responses(buffer_size)
, _buffer((uint8_t*)malloc(buffer_size))
, _buffer_size(buffer_size)
-{
- start();
-}
+ , _thread(&Worker::run, this)
+{}
Worker::~Worker()
{
_exit_flag = true;
_sem.post();
- join();
+ _thread.join();
free(_buffer);
}
void
-Worker::_run()
+Worker::run()
{
while (_sem.wait() && !_exit_flag) {
MessageHeader msg;