… | |
… | |
43 | async { ... } [@args...] |
43 | async { ... } [@args...] |
44 | Create a new asynchronous process and return it's process object |
44 | Create a new asynchronous process and return it's process object |
45 | (usually unused). When the sub returns the new process is |
45 | (usually unused). When the sub returns the new process is |
46 | automatically terminated. |
46 | automatically terminated. |
47 | |
47 | |
|
|
48 | When the coroutine dies, the program will exit, just as in the main |
|
|
49 | program. |
|
|
50 | |
48 | # create a new coroutine that just prints its arguments |
51 | # create a new coroutine that just prints its arguments |
49 | async { |
52 | async { |
50 | print "@_\n"; |
53 | print "@_\n"; |
51 | } 1,2,3,4; |
54 | } 1,2,3,4; |
52 | |
55 | |
… | |
… | |
78 | |
81 | |
79 | $process->ready |
82 | $process->ready |
80 | Put the given process into the ready queue. |
83 | Put the given process into the ready queue. |
81 | |
84 | |
82 | $process->cancel (arg...) |
85 | $process->cancel (arg...) |
83 | Temrinates the given process and makes it return the given arguments |
86 | Terminates the given process and makes it return the given arguments |
84 | as status (default: the empty list). |
87 | as status (default: the empty list). |
85 | |
88 | |
86 | $process->join |
89 | $process->join |
87 | Wait until the coroutine terminates and return any values given to |
90 | Wait until the coroutine terminates and return any values given to |
88 | the "terminate" or "cancel" functions. "join" can be called multiple |
91 | the "terminate" or "cancel" functions. "join" can be called multiple |
… | |
… | |
127 | from the same thread (this requirement might be losened in the future |
130 | from the same thread (this requirement might be losened in the future |
128 | to allow per-thread schedulers, but Coro::State does not yet allow |
131 | to allow per-thread schedulers, but Coro::State does not yet allow |
129 | this). |
132 | this). |
130 | |
133 | |
131 | SEE ALSO |
134 | SEE ALSO |
132 | Coro::Channel, Coro::Cont, Coro::Specific, Coro::Semaphore, |
135 | Support/Utility: Coro::Cont, Coro::Specific, Coro::State, Coro::Util. |
133 | Coro::Signal, Coro::State, Coro::Timer, Coro::Event, Coro::Handle, |
136 | |
134 | Coro::RWLock, Coro::Socket. |
137 | Locking/IPC: Coro::Signal, Coro::Channel, Coro::Semaphore, |
|
|
138 | Coro::SemaphoreSet, Coro::RWLock. |
|
|
139 | |
|
|
140 | Event/IO: Coro::Timer, Coro::Event, Coro::Handle, Coro::Socket, |
|
|
141 | Coro::Select. |
|
|
142 | |
|
|
143 | Embedding: <Coro:MakeMaker> |
135 | |
144 | |
136 | AUTHOR |
145 | AUTHOR |
137 | Marc Lehmann <schmorp@schmorp.de> |
146 | Marc Lehmann <schmorp@schmorp.de> |
138 | http://home.schmorp.de/ |
147 | http://home.schmorp.de/ |
139 | |
148 | |