MirOS Manual: insque(3), remque(3)

INSQUE(3)                  BSD Programmer's Manual                   INSQUE(3)

NAME

     insque, remque - insert/remove element from a queue

SYNOPSIS

     #include <search.h>

     void
     insque(void *elem, void *pred);

     void
     remque(void *elem);

DESCRIPTION

     These interfaces have been superceded by the queue(3) macros and are pro-
     vided for compatibility with legacy code.

     insque() and remque() manipulate queues built from doubly linked lists.
     The queue can be either circular or linear. Each element in the queue
     must be of the following form:

           struct qelem {
                   struct qelem   *q_forw;
                   struct qelem   *q_back;
                   char            q_data[];
           };

     The first two elements in the struct must be pointers of the same type
     that point to the previous and next elements in the queue respectively.
     Any subsequent data in the struct is application-dependent.

     The insque() function inserts elem into a queue immediately after pred.

     The remque() function removes elem from the queue.

     These functions are not atomic unless that machine architecture allows
     it.

SEE ALSO

     queue(3)

STANDARDS

     The insque() and remque() functions conform to the IEEE Std 1003.1-2001
     ("POSIX") and X/Open Portability Guide Issue 4.3 ("XPG4.3") specifica-
     tions.

HISTORY

     The insque() and remque() functions are derived from the insque and
     remque instructions on the VAX. They first appeared in 4.2BSD.

MirOS BSD #10-current          August 12, 1993                               1

Generated on 2017-04-03 16:26:17 by $MirOS: src/scripts/roff2htm,v 1.88 2017/01/29 00:51:06 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002–2017 The MirOS Project, Germany.
This product includes material provided by mirabilos.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.