43 |
|
|
44 |
* Changes to Scheme functions and syntax |
* Changes to Scheme functions and syntax |
45 |
|
|
46 |
|
** Mutexes are now recursive. |
47 |
|
|
48 |
|
Locking a mutex that you have already locked will now succeed. Every |
49 |
|
call to lock-mutex must be matched with a call to unlock-mutex. Only |
50 |
|
the last call to unlock-mutex will actually unlock the mutex. |
51 |
|
|
52 |
|
** New function 'try-mutex'. |
53 |
|
|
54 |
|
This function will attempt to lock a mutex but will return immediately |
55 |
|
instead if blocking, indicating failure. |
56 |
|
|
57 |
|
** Waiting on a condition variable can have a timeout. |
58 |
|
|
59 |
|
The funtion 'wait-condition-variable' now takes a third, optional |
60 |
|
argument that specifies the point in time where the waiting should be |
61 |
|
aborted. |
62 |
|
|
63 |
|
** New function 'broadcast-condition-variable'. |
64 |
|
|
65 |
** New functions 'all-threads' and 'current-thread'. |
** New functions 'all-threads' and 'current-thread'. |
66 |
|
|
67 |
** Signals and system asyncs work better with threads. |
** Signals and system asyncs work better with threads. |