summaryrefslogtreecommitdiffstats
path: root/Include/pystate.h
Commit message (Collapse)AuthorAgeFilesLines
* I can't seem to do anything right :-)Guido van Rossum1998-12-211-1/+1
| | | | | As Chris H. points out, I should have added 'extern' to the declaration of _PyThreadState_Current. Here it is.
* Add macro version of PyThreadState_GET(). This usesGuido van Rossum1998-12-211-0/+11
| | | | _PyThreadState_Current, defined in pystate.c.
* Add DL_IMPORT(returntype) for all officially exported functions.Guido van Rossum1998-12-041-9/+9
|
* On second though, NEXITFUNCS should be defined in pythonrun.c and notGuido van Rossum1998-10-011-2/+0
| | | | | here; pystate.h doesn't use it (I thought I wanted to move the array there but that won't work).
* Move 'dict' struct member to end of struct. This ensures binaryGuido van Rossum1998-04-131-2/+2
| | | | | | compatibility for shared libraries. *** WARNING -- IF YOU BUILT 1.5.1BETA1, DO A "MAKE CLEAN" ***
* Add dict struct member and PyThreadState_GetDict() prototype.Guido van Rossum1998-04-101-0/+3
|
* Mass checkin (more to follow for other directories).Guido van Rossum1997-08-021-42/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce truly separate (sub)interpreter objects. For now, these must be used by separate threads, created from C. See Demo/pysvr for an example of how to use this. This also rationalizes Python's initialization and finalization behavior: Py_Initialize() -- initialize the whole interpreter Py_Finalize() -- finalize the whole interpreter tstate = Py_NewInterpreter() -- create a new (sub)interpreter Py_EndInterpreter(tstate) -- delete a new (sub)interpreter There are also new interfaces relating to threads and the interpreter lock, which can be used to create new threads, and sometimes have to be used to manipulate the interpreter lock when creating or deleting sub-interpreters. These are only defined when WITH_THREAD is defined: PyEval_AcquireLock() -- acquire the interpreter lock PyEval_ReleaseLock() -- release the interpreter lock PyEval_AcquireThread(tstate) -- acquire the lock and make the thread current PyEval_ReleaseThread(tstate) -- release the lock and make NULL current Other administrative changes: - The header file bltinmodule.h is deleted. - The init functions for Import, Sys and Builtin are now internal and declared in pythonrun.h. - Py_Setup() and Py_Cleanup() are no longer declared. - The interpreter state and thread state structures are now linked together in a chain (the chain of interpreters is a static variable in pythonrun.c). - Some members of the interpreter and thread structures have new, shorter, more consistent, names. - Added declarations for _PyImport_{Find,Fixup}Extension() to import.h.
* Added Py_PROTO macros for SunOS 4.x /bin/cc.Guido van Rossum1997-05-201-6/+6
|
* Massive changes for separate thread state management.Guido van Rossum1997-05-051-0/+134
All per-thread globals are moved into a struct which is manipulated separately.