Date: Thu, 11 Oct 2001 03:00:02 -0700 (PDT) From: yuri.viktarovich@philips.com To: freebsd-bugs@FreeBSD.org Subject: Re: kern/30781: msgrcv call blocks other pthread's jobs Message-ID: <200110111000.f9BA02j71576@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/30781; it has been noted by GNATS. From: yuri.viktarovich@philips.com To: freebsd-gnats-submit@FreeBSD.org, dwchoe@naver.com Cc: Subject: Re: kern/30781: msgrcv call blocks other pthread's jobs Date: Thu, 11 Oct 2001 11:52:28 +0200 > For msgrcv(3), it is the msgflg parameter - read the msgrcv(3) manual page > and set the IPC_NOWAIT flag. Then have your main thread call msgrcv(3) > in non-blocking mode and if it returns nothing, sleep for a while before > the next call. That's not really "message waiting" architecture than. Sending process should trigger the event and listening process should awake on it. Just like with sockets. Looks like that's currently impossible in FreeBSD with msgXXX functions without interrupting the other threads. Anyway shouldn't it be some generic uniform way to wakeup processes/threads on events working the same way on msgXXX, FDs, process start/end, other events? Yuri. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200110111000.f9BA02j71576>