base: use blockade in thread

Issue #3612
This commit is contained in:
Alexander Boettcher
2020-01-24 14:22:05 +01:00
committed by Christian Helmuth
parent e686ff78e9
commit 5440cd4b50
12 changed files with 15 additions and 16 deletions

View File

@ -53,7 +53,7 @@ void Thread::_thread_start()
lx_sigsetmask(LX_SIGCHLD, false);
Thread::myself()->entry();
Thread::myself()->_join_lock.unlock();
Thread::myself()->_join.wakeup();
sleep_forever();
}

View File

@ -80,7 +80,7 @@ void Thread::_thread_start()
thread->entry();
/* unblock caller of 'join()' */
thread->_join_lock.unlock();
thread->_join.wakeup();
sleep_forever();
}

View File

@ -496,7 +496,7 @@ Native_thread &Thread::native_thread() { return *_native_thread; }
Thread::Thread(size_t weight, const char *name, size_t /* stack size */,
Type, Cpu_session * cpu_sess, Affinity::Location)
: _cpu_session(cpu_sess), _affinity(), _join_lock()
: _cpu_session(cpu_sess), _affinity()
{
Native_thread::Meta_data *meta_data =
new (global_alloc()) Thread_meta_data_created(this);