Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 45 |
Nodes: | 6 (0 / 6) |
Uptime: | 04:34:22 |
Calls: | 259 |
Calls today: | 2 |
Files: | 870 |
D/L today: |
3 files (5,048K bytes) |
Messages: | 72,523 |
Posted today: | 3 |
Is it possible to run two completely independent Python interpreters in
one process, each using a thread?
By independent, I mean that no data is shared between the interpreters
and thus the C API can be used without any other "lock/GIL" etc.
On Mon, 5 Aug 2024 23:19:14 +0200, aotto1968 wrote:
Is it possible to run two completely independent Python interpreters in
one process, each using a thread?
By independent, I mean that no data is shared between the interpreters
and thus the C API can be used without any other "lock/GIL" etc.
Seems like yes <https://docs.python.org/3/c-api/init.html#c.Py_NewInterpreterFromConfig>.
On 2024-08-05, aotto1968 via Python-list <python-list@python.org> wrote:
Is it possible to run two completely independent Python interpreters
in one process, each using a thread?
By independent, I mean that no data is shared between the
interpreters and thus the C API can be used without any other
"lock/GIL" etc.
No, not using any OS I've ever seen. The usual definition of "threads"
is that they share data, and the definition of "processes" is that
processes don't share data.
How exactly does what you're trying to do differ from runnig two
Python interpreters in two processes?
--
Grant
On 6 Aug 2024, at 07:11, aotto1968 via Python-list <python-list@python.org> wrote:
I know but I use a thread like a process because the "conversation" between the threads is done by my
software. a Thread is usually faster to startup (thread-pool) this mean for high-load this is
significant faster even than fork.
... a Thread is usually faster to startup (thread-pool) ...