1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-04 05:50:26 +02:00
Commit graph

11201 commits

Author SHA1 Message Date
Marius Vollmer
a4d106c70e * threads.h, async.h, threads.c (SCM_CRITICAL_SECTION_START,
SCM_CRITICAL_SECTION_END): Moved here from threads.h since now
they also block/unblock execution of asyncs and call
scm_async_click which is declared in async.h but threads.h can not
include async.h since async.h already includes threads.h.
(scm_i_critical_section_level): New, for checking mistakes in the
use of the SCM_CRITICAL_SECTION_* macros.
(scm_i_critical_section_mutex): Make it a recursive mutex so that
critical sections can be nested.

* threads.h, threads.c (scm_frame_lock_mutex): New.
(scm_frame_critical_section): Take mutex as argument.
(framed_critical_section_mutex): New, used as default for above.
(scm_init_threads): Initialize it.
(scm_threads_prehistory): Do not initialize thread_admin_mutex and
scm_i_critical_section_mutex; both are initialized statically.
2005-03-07 21:30:24 +00:00
Marius Vollmer
673ba2da04 Synchronized docstrings. 2005-03-04 17:56:31 +00:00
Marius Vollmer
db6673e5a3 *** empty log message *** 2005-03-04 17:56:04 +00:00
Marius Vollmer
69d2000d93 Docstring updates. 2005-03-04 17:55:49 +00:00
Marius Vollmer
ba1b72235a (scm_try_mutex): Renamed argument for consistency. 2005-03-04 17:54:50 +00:00
Marius Vollmer
d0a45bfffd *** empty log message *** 2005-03-04 17:06:34 +00:00
Marius Vollmer
9eaf7f85dd (scm_call_with_dynamic_root): New docstring. 2005-03-04 17:06:19 +00:00
Marius Vollmer
a558cc63a8 Updates. 2005-03-04 16:57:17 +00:00
Marius Vollmer
beac603912 Talk about new init functions. 2005-03-04 16:05:01 +00:00
Marius Vollmer
384138c496 Use smobs as an example for 'remembering'. Mention continuation barriers. 2005-03-04 16:04:22 +00:00
Marius Vollmer
a0f78c5085 Reference "Blocking" for scm_leave_guile/scm_enter_guile. 2005-03-04 15:48:18 +00:00
Marius Vollmer
9ba2fab389 Better docs for leaving guile mode. 2005-03-04 15:47:48 +00:00
Marius Vollmer
e03bb21b83 Use ``...'' instead of "...". The latter doesn't seem to work for
some reason.
2005-03-04 14:22:41 +00:00
Marius Vollmer
ca6a8a38a4 Specify return type for scm_c_array_rank. 2005-03-04 14:21:01 +00:00
Marius Vollmer
de527efba5 Define _GNU_SOURCE. 2005-03-04 12:11:10 +00:00
Marius Vollmer
a81b861870 *** empty log message *** 2005-03-02 20:56:45 +00:00
Marius Vollmer
0ddf47fcaa Use scm_current_input_port instead of scm_cur_inp. Use scm_std_select
instead of scm_internal_select.
2005-03-02 20:56:34 +00:00
Marius Vollmer
d8d925f310 Only test when 'threads are provided. 2005-03-02 20:55:17 +00:00
Marius Vollmer
1f834c95da Additions. 2005-03-02 20:54:40 +00:00
Marius Vollmer
49aaa6d2a3 Do not check for fast or recursive mutexes. Check
for pthread_attr_getstack.
(SCM_I_GSC_USE_COOP_THREADS): Dot not subst.
(pthread_mutexattr_settype): Do not check for it.
2005-03-02 20:53:19 +00:00
Marius Vollmer
896df2d58b Use scm_is_pair instead of SCM_CONSP; use scm_is_null instead of
SCM_NULLP.
2005-03-02 20:50:48 +00:00
Marius Vollmer
b4fddbbeda Updates for the new thread stuff. 2005-03-02 20:46:41 +00:00
Marius Vollmer
9de87eea47 See ChangeLog from 2005-03-02. 2005-03-02 20:42:01 +00:00
Marius Vollmer
cb1cfc42a4 (scm_frame_current_module): New. 2005-03-02 20:14:59 +00:00
Marius Vollmer
b5623573b4 (scm_primitive_load): Use scm_i_frame_current_load_port instead of
scm_internal_dynamic_wind.
2005-03-02 20:13:53 +00:00
Marius Vollmer
bf6de59d5b Removed obsolete comment. 2005-03-02 20:11:55 +00:00
Marius Vollmer
a41666e546 (scm_hash_fn_create_handle_x, scm_hash_fn_remove_x): Use "!scm_is_eq"
instead of "!=".
2005-03-02 20:05:38 +00:00
Marius Vollmer
657bdfeae3 (SCM_I_GSC_USE_COOP_THREADS, SCM_USE_COOP_THREADS): Removed. 2005-03-02 19:58:26 +00:00
Marius Vollmer
731294434a (progargs_fluid): New.
(scm_program_arguments, scm_set_program_arguments): Use it instead
of scm_progargs.
(scm_init_feature): Allocate it.  Also, only add "threads" feature
when SCM_USE_PTHREAD_THREADS is true.
2005-03-02 19:40:20 +00:00
Marius Vollmer
5c6148424b Comment on #endif 2005-03-02 18:50:45 +00:00
Marius Vollmer
9b7952c06e * Makefile.am (modinclude_HEADER): Removed threads-plugin.h.
(libguile_la_SOURCES): Added null-threads.c
(EXTRA_libguile_la_SOURCES): Removed pthread-threads.c and
threads-plugin.c.
* pthread-threads.c, threads-plugin.c, threads-plugin.h: Removed.
2005-03-02 16:41:01 +00:00
Kevin Ryde
dfd49d754a *** empty log message *** 2005-02-28 23:01:48 +00:00
Kevin Ryde
d8c3fde933 More of:
(Shared Arrays): New section.
2005-02-28 22:58:03 +00:00
Kevin Ryde
b4b78f5d7d (Shared Arrays): Rewrite make-shared-array for clarity, adding examples. 2005-02-28 22:57:10 +00:00
Kevin Ryde
e2535ee4a5 (Shared Arrays): New section. 2005-02-28 22:46:08 +00:00
Kevin Ryde
a323275d0e *** empty log message *** 2005-02-28 22:36:26 +00:00
Kevin Ryde
51545a904e (Control Flow): Cross reference Tail Calls. 2005-02-28 22:35:51 +00:00
Marius Vollmer
35f2529d69 *** empty log message *** 2005-02-28 02:46:46 +00:00
Marius Vollmer
95aacf7fe6 Add '--verbose' option to autoreconf invocation. Thanks to Bruno
Haible.
2005-02-28 02:46:30 +00:00
Marius Vollmer
39b6cb8678 docs for scm_c_array_rank. 2005-02-28 02:45:10 +00:00
Marius Vollmer
ca157405cd Removed references to text "below" that does not exist in this file. 2005-02-28 01:21:54 +00:00
Kevin Ryde
5f708db610 More of:
(SRFI-1 Fold and Map): Rewrite fold, pair-fold and reduce for clarity.
2005-02-28 00:33:40 +00:00
Marius Vollmer
ad3d5a65c8 *** empty log message *** 2005-02-27 23:52:04 +00:00
Marius Vollmer
1c80707c55 (scm_setsockopt): Handle IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP
options.  Also, reorganized the code a bit for cleanliness.  Thanks to
Greg Troxel!
2005-02-27 23:50:30 +00:00
Mikael Djurfeldt
73a90115e6 Bugfix: Include <libguile.h> outside of the extern "C"
block.
2005-02-27 00:04:56 +00:00
Kevin Ryde
f0a9ab4d90 In format, note no parameters to ~( case conversion. 2005-02-25 23:09:33 +00:00
Marius Vollmer
5d2cb3abcf *** empty log message *** 2005-02-25 22:36:07 +00:00
Marius Vollmer
5b58246699 (scm_i_rehash): Remove elements from old bucket vector
so that no two weak alist vectors share a spine.
(scm_hash_fn_create_handle_x): Deal with a possible rehashing
during GC before inserting the new alist cell.
2005-02-25 22:35:26 +00:00
Marius Vollmer
c2f21af5f8 (scm_i_rehash): Remove elements from old bucket vector so that no two
weak alist vectors share a spine.
2005-02-25 21:22:44 +00:00
Marius Vollmer
838c4126f5 *** empty log message *** 2005-02-23 17:24:38 +00:00