Vladimir Lipsky wrote:
It's state is set to PREVIOUS_STATE+FINISHED
So it's never equal to just FINISHED
Ah, Yep. Works for JOINABLE, which is 0, but ...
Typo or what?
Inexact ;-)
leo
And on the third hand, if I understood the code correctly ...
src/threads.c: 40: thread_func()
src/threads.c: 53: interpreter->thread_data->state |=
THREAD_STATE_FINISHED;
src/threads.c: 312: pt_thread_join ()
src/threads.c: 321: if (interpreter->thread_data->state ==
THREAD_STATE_JOINABLE ||
sr
Vladimir Lipsky wrote:
threads_4 is testing killing threads. This is achieved by scheduling a
terminate event to the running interpreter. This can only succeed, if
the event system is running too.
see src/events.c/Parrot_new_terinate_event()
Though thr_windows.h doesn't contain error checking fo
threads_4 is testing killing threads. This is achieved by scheduling a
terminate event to the running interpreter. This can only succeed, if the
event system is running too.
see src/events.c/Parrot_new_terinate_event()
Though thr_windows.h doesn't contain error checking for now, it luckily
fails
Vladimir Lipsky wrote:
This patch defines Win32 thread primitives.
Great.
...Actually it consists of the
following files:
threads.h.diff
thr_windows.h.diff
threads.t.diff
timer.t.diff
Small nitpick - please provide just one patch file - applying is much
simpler then, or less work ;)
The patch