… | |
… | |
764 | request finish on its own. |
764 | request finish on its own. |
765 | |
765 | |
766 | =item 3) open callback adds more requests |
766 | =item 3) open callback adds more requests |
767 | |
767 | |
768 | In the open callback, if the open was not successful, copy C<< |
768 | In the open callback, if the open was not successful, copy C<< |
769 | req->errorno >> to C<< grp->errorno >> and set C<< grp->errorno >> to |
769 | req->errorno >> to C<< grp->errorno >> and set C<< grp->result >> to |
770 | C<-1> to signal an error. |
770 | C<-1> to signal an error. |
771 | |
771 | |
772 | Otherwise, malloc some memory or so and issue a read request, adding the |
772 | Otherwise, malloc some memory or so and issue a read request, adding the |
773 | read request to the group. |
773 | read request to the group. |
774 | |
774 | |
775 | =item 4) continue issuing requests till finished |
775 | =item 4) continue issuing requests till finished |
776 | |
776 | |
777 | In the real callback, check for errors and possibly continue with |
777 | In the read callback, check for errors and possibly continue with |
778 | C<eio_close> or any other eio request in the same way. |
778 | C<eio_close> or any other eio request in the same way. |
779 | |
779 | |
780 | As soon as no new requests are added the group request will finish. Make |
780 | As soon as no new requests are added, the group request will finish. Make |
781 | sure you I<always> set C<< grp->result >> to some sensible value. |
781 | sure you I<always> set C<< grp->result >> to some sensible value. |
782 | |
782 | |
783 | =back |
783 | =back |
784 | |
784 | |
785 | =head4 REQUEST LIMITING |
785 | =head4 REQUEST LIMITING |