From 452430627a11437626cdc1346ac2a21b9b6e86d6 Mon Sep 17 00:00:00 2001 From: Pete Shadbolt Date: Tue, 19 Jul 2016 14:43:47 +0100 Subject: [PATCH] Threaded HTTP server -> no laggy refresh --- abp/server.py | 6 +++++- static/index.html | 14 +++++++------- static/main.css | 1 + static/scripts/materials.js | 2 +- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/abp/server.py b/abp/server.py index e450444..f220075 100644 --- a/abp/server.py +++ b/abp/server.py @@ -1,6 +1,7 @@ from websocket_server import WebsocketServer from SimpleHTTPServer import SimpleHTTPRequestHandler from BaseHTTPServer import HTTPServer +from SocketServer import ThreadingMixIn import os, sys, threading import webbrowser import argparse @@ -19,6 +20,9 @@ def client_left(client, server): print "Client {} disconnected.".format(client["id"]) clients.remove(client) +class ThreadedHTTPServer(ThreadingMixIn, HTTPServer): + """ Handle requests in a separate thread """ + if __name__ == '__main__': parser = argparse.ArgumentParser(description = "ABP websocket server") parser.add_argument("-v", action="store_false", help="Launch browser") @@ -29,7 +33,7 @@ if __name__ == '__main__': os.chdir(where) # Start the HTTP server - httpserver = HTTPServer(('', 5001), SimpleHTTPRequestHandler) + httpserver = ThreadedHTTPServer(('', 5001), SimpleHTTPRequestHandler) thread = threading.Thread(target = httpserver.serve_forever) thread.daemon = True thread.start() diff --git a/static/index.html b/static/index.html index b2de929..e0f3148 100644 --- a/static/index.html +++ b/static/index.html @@ -26,15 +26,15 @@