Tôi đã lấy mã mẫu từ Unterstanding eventlet.wsgi.server.Là một greenthread bằng một chủ đề "thực"
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)
Khi tôi truy cập máy chủ web qua các địa chỉ IP khách hàng khác nhau, tôi có thể thấy chúng được xử lý song song. Và với các bản in trong hello_world
, tôi cũng có thể rằng chúng được xử lý trong hai greenthreads khác nhau nhưng trong cùng một hệ điều hành thread.
Tôi mới sử dụng Python. Tôi tò mò rằng nếu mỗi mối quan hệ greenthread đến một sợi hệ điều hành cơ bản?
đề Xanh không dựa trên bất kỳ bản địa Các khả năng của hệ điều hành và chúng được quản lý trong không gian người dùng thay vì không gian hạt nhân – Chipmunk