index.txt
9PQUEUE(2) System Calls Manual 9PQUEUE(2) NAME Reqqueue, reqqueuecreate, reqqueuepush, reqqueueflush - deferred pro‐ cessing of 9P requests SYNOPSIS #include <u.h> #include <libc.h> #include <fcall.h> #include <thread.h> #include <9p.h> struct Reqqueue { ... }; Reqqueue* reqqueuecreate(void); void reqqueuepush(Reqqueue *q, Req *r, void (*f)(Req *)); void reqqueueflush(Reqqueue *q, Req *r); DESCRIPTION Reqqueue provides routines for deferred processing of 9p request in multithreaded 9p servers. The reqqueuecreate function spawns a process for handling requests re‐ turning a pointer to the Reqqueue structure allocated. To schedule a request to be processed on a queue, reqqueuepush is called with request r and its handler function f. A previously submitted request can be flushed from a queue by reqqueue‐ flush which will remove the request immediately if processing has not started. If processing has been started, the process will be inter‐ rupted. SOURCE /sys/src/lib9p/queue.c SEE ALSO 9p(2) 9PQUEUE(2)