PreviousUpNext

14.4.49  Mailqueue

The standard library Mailqueue api defines access to unbounded-length thread-to-thread message queues.

The Mailqueue api is implemented by the mailqueue package.

The Mailqueue api source code is in src/lib/src/lib/thread-kit/src/core-thread-kit/mailqueue.api.

See also: Maildrop.See also: Mailcaster.

The above information is manually maintained and may contain errors.

api {
    Mailqueue X;
    make_mailqueue : Microthread -> Mailqueue(X );
    same_mailqueue : (Mailqueue(X ) , Mailqueue(X )) -> Bool;
    put_in_mailqueue : (Mailqueue(X ) , X) -> Void;
    take_from_mailqueue : Mailqueue(X ) -> X;
    take_from_mailqueue' : Mailqueue(X ) -> Mailop(X );
    take_all_from_mailqueue : Mailqueue(X ) -> List(X );
    take_all_from_mailqueue' : Mailqueue(X ) -> Mailop(List(X ) );
    mailqueue_to_string : (Mailqueue(X ) , String) -> String;
    get_mailqueue_reader : Mailqueue(X ) -> Microthread;
    get_mailqueue_id : Mailqueue(X ) -> Int;
    get_mailqueue_length : Mailqueue(X ) -> Int;
    get_mailqueue_putcount : Mailqueue(X ) -> Int;
    drop_mailqueue_tap : (Mailqueue(X ) , Ref(Void )) -> Void;
    note_mailqueue_tap : (Mailqueue(X ) , (X -> Void)) -> Ref(Void );};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext