From b28fb130c80eda36a455ad341d1575c33d48ce6d Mon Sep 17 00:00:00 2001 From: Denis Bilenko Date: Wed, 8 Oct 2008 19:20:10 +0700 Subject: [PATCH] simple example on socket,spawn --- examples/connect.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 examples/connect.py diff --git a/examples/connect.py b/examples/connect.py new file mode 100644 index 0000000..1a52f60 --- /dev/null +++ b/examples/connect.py @@ -0,0 +1,23 @@ +import sys +from eventlet.green import socket +from eventlet.green import time +from eventlet.api import spawn + +def client(): + # using domain name directly is of course possible too + # this is a test to see that dns lookups happen simultaneously too + ip = socket.gethostbyname('www.google.com') + c = socket.socket() + c.connect((ip, 80)) + c.send('GET /\r\n\r\n') + print c.recv(1024) + + +for x in range(5): + # note that spawn doesn't switch to new greenlet immediately. + spawn(client) + +# the execution ends with the main greenlet exit (by design), so we need to give control +# to other greenlets for some time here. +time.sleep(1) +sys.stdout.flush()