lkml.org 
[lkml]   [2000]   [Mar]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Slow pthread_create() under high load
On Tue, Mar 28, 2000 at 08:27:30PM +0200, Robert de Vries wrote:
> On Tue, 28 Mar 2000, Stephen C. Tweedie wrote:
> > > sort of signal to all tasks in the group.
> >
> > You can do that anyway, in user space. Much cleaner.
>
> Sure you can, but the trick is to send one (1) signal to a group of tasks.
> Not n times the same signal to n tasks. IMHO, the POSIX semantics of

So the nonmanager threads do
sigaction(n,s)
=== save local copy of s,n,thread_id
real_sigaction(realprocessid(myid));
if unblocked a signal that is user_space pending
kill self with that signal

Now the information about who blocks what is available in user space

kill(gettpid(),n) where gettpid has been fixed to get the
root pid
=== find someone who is not blocking and
kill(someone,n)
if all threads block, then mark signal
as pending


--
---------------------------------------------------------
Victor Yodaiken
FSMLabs: www.fsmlabs.com www.rtlinux.com
FSMLabs is a servicemark and a service of
VJY Associates L.L.C, New Mexico.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:57    [W:0.081 / U:1.416 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site