I am developing a multiplayer game which has a lobby where people can join different games.
I am curious about if I should start a thread for each game room.
I am using java.io so I already have a thread for each player.
Even though there is not heavy load on each thread will having many threads slow down my server?
If I host a server for 100 players and 30 rooms can an avarage virtual server handle 150 threads at once? Or it would impact the gameplay?
It is a real time game where I need instant message delivery for each position update (UDP)?
A thread (as you already know) simply allows tasks to be run at the same time. Having loads of threads will not always help or disadvantage the servers speed, this is limited by other factors like you internet speed or the processing power of the computer. The gameplay of the people on the other side will run as fast as the computer can handle all the requests, even if you have 10000 threads they will all require processing power and connections through the internet.
In short, the speed of the server and the client/s will be affected by other people using your server, the speed will be limited by the speed of your internet connections and/or your CPU power.
If this hasn't answered your question please define the actual question more clearly rather than asking lots of general questions.
EDIT: After reading your comment my advice: do whatever you think will be best for the server. Having a load of strands will not affect your server for the good or bad. :)