27 |
|
|
28 |
* Changes to Scheme functions and syntax |
* Changes to Scheme functions and syntax |
29 |
|
|
30 |
|
** New functions 'all-threads' and 'current-thread'. |
31 |
|
|
32 |
|
** Signals and system asyncs work better with threads. |
33 |
|
|
34 |
|
The function 'sigaction' now takes a fourth, optional, argument that |
35 |
|
specifies the thread that the handler should run in. When the |
36 |
|
argument is omitted, the handler will run in the thread that called |
37 |
|
'sigaction'. |
38 |
|
|
39 |
|
Likewise, 'system-async-mark' takes a second, optional, argument that |
40 |
|
specifies the thread that the async should run in. When it is |
41 |
|
omitted, the async will run in the thread that called |
42 |
|
'system-async-mark'. |
43 |
|
|
44 |
|
C code can use the new functions scm_sigaction_for_thread and |
45 |
|
scm_system_async_mark_for_thread to pass the new thread argument. |
46 |
|
|
47 |
|
** The function 'system-async' is deprecated. |
48 |
|
|
49 |
|
You can now pass any zero-argument procedure to 'system-async-mark'. |
50 |
|
The function 'system-async' will just return its argument unchanged |
51 |
|
now. |
52 |
|
|
53 |
** New function 'unsetenv'. |
** New function 'unsetenv'. |
54 |
|
|
55 |
** New macro 'define-syntax-public'. |
** New macro 'define-syntax-public'. |