diff options
author | Guido van Rossum <guido@python.org> | 1992-08-05 19:58:53 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1992-08-05 19:58:53 (GMT) |
commit | ff4949eeee7f86117d4a69599777ff5564315e39 (patch) | |
tree | 551b1b2d53d665fb81d10dd1d51e433be0512604 /Modules/threadmodule.c | |
parent | 25bec8c8dc0de55694cc573ef6d213ee5babd306 (diff) | |
download | cpython-ff4949eeee7f86117d4a69599777ff5564315e39.zip cpython-ff4949eeee7f86117d4a69599777ff5564315e39.tar.gz cpython-ff4949eeee7f86117d4a69599777ff5564315e39.tar.bz2 |
* Makefile: cosmetics
* socketmodule.c: get rid of makepair(); fix makesocketaddr to fix
broken recvfrom()
* socketmodule: get rid of getStrarg()
* ceval.h: move eval_code() to new file eval.h, so compile.h is no
longer needed.
* ceval.c: move thread comments to ceval.h; always make save/restore
thread functions available (for dynloaded modules)
* cdmodule.c, listobject.c: don't include compile.h
* flmodule.c: include ceval.h
* import.c: include eval.h instead of ceval.h
* cgen.py: add forground(); noport(); winopen(""); to initgl().
* bltinmodule.c, socketmodule.c, fileobject.c, posixmodule.c,
selectmodule.c:
adapt to threads (add BGN/END SAVE macros)
* stdwinmodule.c: adapt to threads and use a special stdwin lock.
* pythonmain.c: don't include getpythonpath().
* pythonrun.c: use BGN/END SAVE instead of direct calls; also more
BGN/END SAVE calls etc.
* thread.c: bigger stack size for sun; change exit() to _exit()
* threadmodule.c: use BGN/END SAVE macros where possible
* timemodule.c: adapt better to threads; use BGN/END SAVE; add
longsleep internal function if BSD_TIME; cosmetics
Diffstat (limited to 'Modules/threadmodule.c')
-rw-r--r-- | Modules/threadmodule.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/Modules/threadmodule.c b/Modules/threadmodule.c index c4de295..6ab7ea8 100644 --- a/Modules/threadmodule.c +++ b/Modules/threadmodule.c @@ -27,15 +27,10 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #include "allobjects.h" #include "modsupport.h" -#include "compile.h" #include "ceval.h" #include "thread.h" -extern void init_save_thread PROTO((void)); -extern void* save_thread PROTO((void)); -extern void restore_thread PROTO((void *)); - object *ThreadError; @@ -83,7 +78,6 @@ lock_acquire_lock(self, args) lockobject *self; object *args; { - void *save; int i; if (args != NULL) { @@ -93,11 +87,9 @@ lock_acquire_lock(self, args) else i = 1; - save = save_thread(); - + BGN_SAVE i = acquire_lock(self->lock_lock, i); - - restore_thread(save); + END_SAVE if (args == NULL) { INCREF(None); @@ -193,8 +185,6 @@ t_bootstrap(args_raw) if (res == NULL) { fprintf(stderr, "Unhandled exception in thread:\n"); print_error(); /* From pythonmain.c */ - fprintf(stderr, "Exiting the entire program\n"); - goaway(1); } (void) save_thread(); exit_thread(); @@ -251,7 +241,7 @@ thread_allocate_lock(self, args) { if (!getnoarg(args)) return NULL; - return newlockobject(); + return (object *) newlockobject(); } static struct methodlist thread_methods[] = { |