Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.CARNet.hr!gregory.BNet.hr!not-for-mail From: Josip Almasi Newsgroups: comp.lang.java.programmer Subject: Re: java unix domain sockets ... or substitute (SOLVED) Date: Fri, 05 Sep 2014 10:23:04 +0200 Organization: B.net Hrvatska d.o.o. Lines: 22 Message-ID: References: NNTP-Posting-Host: 109.60.125.237 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: gregory.bnet.hr 1409905384 13363 109.60.125.237 (5 Sep 2014 08:23:04 GMT) X-Complaints-To: abuse@globalnet.hr NNTP-Posting-Date: Fri, 5 Sep 2014 08:23:04 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.7.0 In-Reply-To: Xref: csiph.com comp.lang.java.programmer:29918 On 09/05/2014 02:53 AM, Andreas Leitgeb wrote: > Andreas Leitgeb wrote: >> My current approach is to use named pipes intead, where the server >> blockingly reads on a "main" pipe (opened just like a plain file). >> >> Clients first create a new pair of named pipes, and pass the names to >> the server, who in response creates a new thread to communicate over >> those pipes and serve client's task that way. > > I've now settled on this approach. > >> This is somewhat awkward (especially cleaning up of stale named pipes), >> and named pipes do not prohibit two readers erroneously on the same pipe. > > I found a solution for keeping the number of stale pipes low enough. > The trick is to delete them as soon as they're opened by both sides. > If a process dies abruptly during its pay-work, then the pipes are > already cleaned up. Neat trick!:) Regards...