multithreading - UI Freeze in simple Socket (Java) app using SWT for UI -



multithreading - UI Freeze in simple Socket (Java) app using SWT for UI -

i'm new java socket programming , exploring socket apis. i've created new simple app starts serversocket , listens clients, when client writes on socket, server allocates new thread client. tried first using console app , worked fine. now, i've made gui same using swt (windowbuilder plugin in eclipse 3.7). window has button toggles listening of server on , off. below code written in swt button's click event start listening clients.

if(!isserverrunning) { btnserverrunner.settext("stop server"); isserverrunning = true; while (listening) { seek { new clienthandler(listener.accept()).start(); } catch(exception ex) { ex.printstacktrace(); } } } else { seek { listener.close(); } catch(exception ex) { ex.printstacktrace(); } btnserverrunner.settext("start server"); isserverrunning = false; }

the clienthandler class has thread extended , hence launch new thread every new client. know above code works console app not work gui since i'm throwing app infinite loop of listening client sockets in button's click. elegant way start , stop serversocket listening clients doesn't freeze app ui?

thanks.

you should utilize separate thread accepting client connections. button start , interrupt thread.

java multithreading sockets swt freeze

Comments

Popular posts from this blog

How do I check if an insert was successful with MySQLdb in Python? -

delphi - blogger via idHTTP : error 400 bad request -

postgresql - ERROR: operator is not unique: unknown + unknown -