[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
17.3.2 Threads
- Bigloo syntax: instantiate::pthread (body thunk) [(name name)]
- SRFI-18 function: make-thread thunk [name]
Returns a new thread which is not started yet. The body of the thread is the body of the procedure thunk. The optional argument name can be use to identify the thread. It can be any Bigloo value.
Warning: the
make-thread
function is deprecated, but still provided for a backward compatibility with previous release of Bigloo. The use of this function is highly discouraged, in favor of theinstantiate::pthread
form.(module example (library pthread) (main main)) (define (main argv) (make-thread (lambda () (print 1) (thread-yield!) (print 2)) 'my-thread))
- SRFI-18 function: thread-start! thread
- SRFI-18 function: thread-start-joinable! thread
Runs a thread created with
instantiate::pthread
. By default, threads are detached, and thus, they cannot be joined.
- SRFI-18 function: thread-sleep! timeout
-
The current thread sleeps for a certain period. It is suspended and the scheduler is free to select a new thread to be resumed. If there is only one thread started in the scheduler, the same thread will be resumed. The time of timeout is used to determine the time the thread must sleep.
Here are the possible types for timeout.
-
date
: the thread sleeps at least until the date timeout. -
real
: the thread sleeps at least timeout seconds. -
fixum
,elong
,llong
: the thread sleeps at least timeout milli-seconds.
-
- SRFI-18 function: thread-join! thread [timeout]
The current thread waits until the thread terminates. If thread terminates,
thread-join!
returns the end-result of the thread or the end-exception if that thread terminates abnormally.It is possible to wait for the termination of the a thread if and only if it has been started with
thread-start-joinable!
. In particular, threads started withthread-start!
cannot be joined.The optional argument timeout, forces to wait at for timeout milli-seconds for the thread to terminate. Note that not all systems support this facility. When supported, the
cond-expand
(see see section SRFIs)pthread-timedjoin
is defined. When the timeout expires some systems, raise an error. Other systems abort silently.
- SRFI-18 function: terminated-thread-exception? obj
- SRFI-18 function: uncaught-exception? obj
- SRFI-18 function: uncaught-exception-reason exc
[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on March 31, 2014 using texi2html 5.0.