Pobrałem przykładowy kod z Unterstanding eventlet.wsgi.server.Czy greenthread jest równy "prawdziwemu" wątkowi
from eventlet import wsgi
import eventlet
from eventlet.green import time
import threading
def hello_world(env, start_response):
print "got request", eventlet.greenthread.getcurrent(), threading.currentThread()
time.sleep(10)
start_response('200 OK', [('Content-Type', 'text/plain')])
return ['Hello, World!\n']
wsgi.server(eventlet.listen(('', 8090)), hello_world)
Po uzyskaniu dostępu do serwera internetowego za pośrednictwem różnych adresów IP klienta widzę, że są przetwarzane równolegle. I z wydrukiem w hello_world
, mogę również, że są one przetwarzane w dwóch różnych greenthreads, ale w tym samym wątku systemu operacyjnego.
Jestem nowy w Pythonie. Jestem ciekawy, że jeśli każdy greenthread wiąże się z podstawowym wątkiem systemu operacyjnego?
Zielone nitki nie opiera się na żadnych rodzimy Funkcje systemu operacyjnego i są zarządzane w przestrzeni użytkownika zamiast w przestrzeni jądra – Chipmunk