blob: ee85a572d888edbab62c157b4bb4bafc50c5bf36 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
LIBPTHREAD
This is the pthread implementation of dietlibc.
Written from scratch by Olaf Dreesen.
1. STATUS: near complete and should work (or not... I had a lot of heisen-bugs...)
On non i386 archs the kernel header have major differences...
NO workaround yet for this problems...
It's like linuxthreads a clone base thread implementation.
I have implemented a "Manager Thread" with all the pain it involves...
Nested thread creation is now working fine...
2. HOW-TO make this lib:
it is a standard dietlibc helper lib...
3. NOTES
NON STANDARD SIGNAL HANDLING for the threads:
SIGHUP the targeted thread is canceled
depends on the cancel type of the thread.
ASYNCHRONOUS: the signal handler will KILL the thread immediately.
DEFERRED: the signal handler mark its thread as canceled.
(only for the sig-handler to do some sane stuff...)
SIGTERM the thread is KILLED
if the thread signaled is the main thread, then ALL child-threads
will get a SIGHUP and after some micros a SIGTERM....
|