Skip to content

Commit 20185c9

Browse files
a few improvements to examples
1 parent 065cc4b commit 20185c9

File tree

2 files changed

+18
-25
lines changed

2 files changed

+18
-25
lines changed

examples/app.py

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,8 @@
1-
# set this to 'threading', 'eventlet', or 'gevent'
2-
async_mode = 'threading'
3-
4-
if async_mode == 'eventlet':
5-
import eventlet
6-
eventlet.monkey_patch()
7-
elif async_mode == 'gevent':
8-
from gevent import monkey
9-
monkey.patch_all()
1+
# set async_mode to 'threading', 'eventlet' or 'gevent' to force a mode
2+
# else, the best mode is selected automatically from what's installed
3+
async_mode = None
104

115
import time
12-
from threading import Thread
136
from flask import Flask, render_template
147
import socketio
158

@@ -24,7 +17,7 @@ def background_thread():
2417
"""Example of how to send server generated events to clients."""
2518
count = 0
2619
while True:
27-
time.sleep(10)
20+
sio.sleep(10)
2821
count += 1
2922
sio.emit('my response', {'data': 'Server generated event'},
3023
namespace='/test')
@@ -34,8 +27,7 @@ def background_thread():
3427
def index():
3528
global thread
3629
if thread is None:
37-
thread = Thread(target=background_thread)
38-
thread.start()
30+
thread = sio.start_background_task(background_thread)
3931
return render_template('index.html')
4032

4133

@@ -95,14 +87,14 @@ def test_disconnect(sid):
9587

9688

9789
if __name__ == '__main__':
98-
if async_mode == 'threading':
90+
if sio.async_mode == 'threading':
9991
# deploy with Werkzeug
10092
app.run(threaded=True)
101-
elif async_mode == 'eventlet':
93+
elif sio.async_mode == 'eventlet':
10294
# deploy with eventlet
10395
import eventlet
10496
eventlet.wsgi.server(eventlet.listen(('', 5000)), app)
105-
elif async_mode == 'gevent':
97+
elif sio.async_mode == 'gevent':
10698
# deploy with gevent
10799
from gevent import pywsgi
108100
try:
@@ -116,4 +108,4 @@ def test_disconnect(sid):
116108
else:
117109
pywsgi.WSGIServer(('', 5000), app).serve_forever()
118110
else:
119-
print('Unknown async_mode: ' + async_mode)
111+
print('Unknown async_mode: ' + sio.async_mode)

examples/latency.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22

33
import socketio
44

5-
# set this to 'threading', 'eventlet', or 'gevent'
6-
async_mode = 'threading'
5+
# set async_mode to 'threading', 'eventlet' or 'gevent' to force a mode
6+
# else, the best mode is selected automatically from what's installed
7+
async_mode = None
78

89
sio = socketio.Server(async_mode=async_mode)
910
app = Flask(__name__)
@@ -15,21 +16,21 @@ def index():
1516
return render_template('latency.html')
1617

1718

18-
@sio.on('ping')
19+
@sio.on('ping_from_client')
1920
def ping(sid):
20-
sio.emit('pong', room=sid)
21+
sio.emit('pong_from_server', room=sid)
2122

2223

2324
if __name__ == '__main__':
24-
if async_mode == 'threading':
25+
if sio.async_mode == 'threading':
2526
# deploy with Werkzeug
2627
app.run(threaded=True)
27-
elif async_mode == 'eventlet':
28+
elif sio.async_mode == 'eventlet':
2829
# deploy with eventlet
2930
import eventlet
3031
from eventlet import wsgi
3132
wsgi.server(eventlet.listen(('', 5000)), app)
32-
elif async_mode == 'gevent':
33+
elif sio.async_mode == 'gevent':
3334
# deploy with gevent
3435
from gevent import pywsgi
3536
try:
@@ -43,4 +44,4 @@ def ping(sid):
4344
else:
4445
pywsgi.WSGIServer(('', 5000), app).serve_forever()
4546
else:
46-
print('Unknown async_mode: ' + async_mode)
47+
print('Unknown async_mode: ' + sio.async_mode)

0 commit comments

Comments
 (0)