[python] global interpret lock.
Jan Matejka
matejka na cat.cz
Čtvrtek Září 25 19:36:30 CEST 2003
Ano je to nativni OS thread.
Pokud thready bezi v cistem interpreteru tak aby se podelily o
interpretr, prepina jadro pythonu mezi nimi po nekolika instrukcich
metakodu. Nejsou tedy schedulovany pouze OS ale take jadrem pythonu.
V praxi nastesti jsou volany casove narocne vstupne-vystupni operace. Na
zacatku takoveto operace (pri niz neni treba interpreteru) se thread
explicitne vzda pozadavku na interpretr a pri ukonceni operace se opet k
interpretru prihlasi. Behem IO operace je tento thread schedulovan pouze
OS a nijak ostatni pythonove thready neblokuje.
Napsal jsem to tak jak se mi to jevi podle pokusu. Pokud je v nejakem
bode chyba prosim o opravu.
Jan Matejka
-----Original Message-----
From: python-bounces na py.cz [mailto:python-bounces na py.cz] On Behalf Of
Radim Kolar
Sent: Thursday, September 25, 2003 1:54 PM
To: Ceska Pytoni konference
Subject: [python] global interpret lock.
Pri procitani diskuzi na Netu jsem narazil a diskuzi ohledne threadu v
Pythonu a tzv. globalniho zamku interpretru, ktery Python pouziva, coz
se mnoha lidem zjevne vubec nelibi.
Nejsou mne jasne dve veci:
a) pokud vytvorim v pythonu thread, stane se z nej OS native thread?
b) bezi tyto thready opravdu soucasne nebo Python mezi nimi dela
interni preemtivni multithreading (bezi jen jeden z nich)?
Další informace o konferenci Python