Because of ongoing problems with thread_yield() and our current scheduler, I've disabled yielding for now; it will now just snooze a bit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21572 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1292,6 +1292,9 @@ peek_next_thread_id(void)
|
|||||||
void
|
void
|
||||||
thread_yield(void)
|
thread_yield(void)
|
||||||
{
|
{
|
||||||
|
// snooze for roughly 3 thread quantums
|
||||||
|
snooze_etc(9000, B_SYSTEM_TIMEBASE, B_RELATIVE_TIMEOUT | B_CAN_INTERRUPT);
|
||||||
|
#if 0
|
||||||
cpu_status state;
|
cpu_status state;
|
||||||
|
|
||||||
struct thread *thread = thread_get_current_thread();
|
struct thread *thread = thread_get_current_thread();
|
||||||
@@ -1308,6 +1311,7 @@ thread_yield(void)
|
|||||||
|
|
||||||
RELEASE_THREAD_LOCK();
|
RELEASE_THREAD_LOCK();
|
||||||
restore_interrupts(state);
|
restore_interrupts(state);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user