have a bit of a problem with timers:

first though i'll explain a little about the program and how it works - incase any of that has anything to do with it

its a multi-user server - the connections are accepted on objects created - i.e. the main form creates a listening socket, and when a new connection is made, the listening socket makes a new client socket which accepts the connection

the new client object then has various methods etc. (including methods to save and write to an SQL server)

now when i try to define a timer object using code, various things happen:

if i use windows.forms.timer (or whatever), nothing happens at all - the server works fine - clients can connect, but timer.tick isnt executed

if i use the system.timers.timer, the timer works but the client object locks up - i.e. the servers listening socket works fine, and the client object even receives data, but doesnt seem able to process it at all

if i use the threading timer, the timer works fine, and the client can connect and respond; any text sent back seems to lag and is really annoying, and as soon as a second client object is created, the timer stops working (it doesnt matter if the 2nd object is the only object - it appears that only the first ever client object can keep the timer working - if the 1st object is running and a 2nd is created, the timer in the 1st also stops working)

all of the code i'm using for these timers has been taken from msdn.

is there anything i could be doing wrong, and could any code anywhere else in the project be affecting this - or could it just be the entire architecture of the project?

thanks in anticipation
x stormeagle x