jamesp@bison.uucp (James Pinakis) (09/18/90)
I am having huge troubles with SunOS's LWP library (using SunOS 4.0.3 on a SS-1) and I would urgently like to hear anybody's experiences with using this library. In particular, I'm curious to find out whether anyone has experienced the library failing to resume (using lwp_resume()) threads which have been suspended (using lwp_suspend()). I'm sure that the threads are being suspended properly and that the call to lwp_resume() is ok (i.e. it is called with a valid thread id) but sometimes the threads just don't resume. In a last ditch effort to fix my problem I tried to get the thread to be suspended to wait on a message (using msg_recv()) and then have the other thread restart it by sending it a message. This worked a little better, but the threads still frequently fail to rendezvous and the program grinds to a halt. I've also noticed that calls to lwp_create() occasionally block. Under what circumstances does this happen (there's no mention of lwp_create() ever blocking in the manual pages)? Do any of the other lwp library calls ever block? I've had little success in finding out anyone's experiences with this library. Is this because no-one uses it? Is it broken? If so, are there any other libraries which provide similar functions (on SPARCstations) with the added novelty of actually working? james jamesp@bison.cs.uwa.oz.au