lionkov / go9p

Package for implementing clients and servers of the 9P and 9P2000 distributed resource protocols in Go.
Other
20 stars 7 forks source link

9pqueue #47

Closed i4ki closed 8 years ago

i4ki commented 8 years ago

There's some way to achieve something like that? http://man2.aiju.de/2/9pqueue

I have a use-case that reads and writes must block for some time, but using the Fsrv current implementation I'm unable to terminate the clients (CTRL-C/kill) because the TFLUSHs arent handled.

Any ideas?

My Plan9 implementation uses reqqueue{push,flush,free} to handle such case. https://github.com/NeowayLabs/dchan/blob/master/plan9/dchan/fs.c#L465

i4ki commented 8 years ago

ok, the problem is only the lack of FlushOp in the srv.Fsrv implementation... The lines below added to srv.Fsrv solves the problem.

func (*Fsrv) Flush(req *Req) {
        req.Flush()
}

Can this be added?

Sorry about the confusion.

lionkov commented 8 years ago

Done.

Thanks, Lucho

On Wed, Mar 30, 2016 at 11:39 AM, Tiago Natel de Moura < notifications@github.com> wrote:

hmm, the problem is only the lack of FlushOp in the srv.Fsrv implementation... The lines below added to srv.Fsrv solves the problem.

func (Fsrv) Flush(req Req) { req.Flush() }

Can this be added?

Sorry about the confusion.

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/lionkov/go9p/issues/47#issuecomment-203545368

i4ki commented 8 years ago

Thanks!