From 24f4e66b12cf0501d0f239ade10b2963f46e6755 Mon Sep 17 00:00:00 2001 From: rsc Date: Mon, 8 Nov 2004 16:04:01 +0000 Subject: still more files --- src/libthread/pid.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/libthread/pid.c (limited to 'src/libthread/pid.c') diff --git a/src/libthread/pid.c b/src/libthread/pid.c new file mode 100644 index 00000000..bbc7dbbf --- /dev/null +++ b/src/libthread/pid.c @@ -0,0 +1,25 @@ + mypid = getpid(); + + /* + * signal others. + * copying all the pids first avoids other thread's + * teardown procedures getting in the way. + */ + lock(&_threadpq.lock); + npid = 0; + for(p=_threadpq.head; p; p=p->next) + npid++; + pid = _threadmalloc(npid*sizeof(pid[0]), 0); + npid = 0; + for(p = _threadpq.head; p; p=p->next) + pid[npid++] = p->pid; + unlock(&_threadpq.lock); + for(i=0; i