Jost, At the moment I am only using the thread ID in trace messages, so if I can safely ignore the overflow, then I will so.
Seth On Wed, 21 Jun 2006 10:28:43 +0200 Jost Berthold <[EMAIL PROTECTED]> wrote: > Hi Seth, > > perhaps this will help you, some information from the implementation > side concerning your question about threadIDs: > > Related code lived in rts/Schedule.c, has recently moved to > rts/Threads.* in the head. > > The ThreadID assigned by the RTS is continuously increasing, and > declared to be StgInt32 (32 bits usually). > So you might get int overflows when running your server for a *fairly* > long time. OTOH, depending on what you want to do with the ThreadIDs > that forkIO returns, IMHO you could just *ignore* these overflows. > > From your short description of how the servers work, you know an upper > bound on the no. of running threads (6), but not on their time to live. > So IMHO the worst case scenario would be: > a new thread for a client gets ID n > ... 2^32 other server threads get spawned > another new thread for a client gets the same ID n again > ... > one of the threads supposed to terminate (killThread n) > > AFAICT, the killThread action will arbitrarily choose one of the two. > > HTH > Jost > > ------ you wrote ------ > Date: Tue, 20 Jun 2006 23:22:26 -0400 > From: Seth Kurtzberg <[EMAIL PROTECTED]> > Subject: Re: FFI: number of worker threads? > To: "Li, Peng" <[EMAIL PROTECTED]> > Cc: [email protected] > > Another related question. I have some threaded applications running > which are servers and run continuously. A thread is spawned for each > new connection, and the thread exits when the client terminates. > > I've noticed that the thread ID increases. On one process I checked > today I am up to thread number 3300. The number of running threads is > not increasing; only six threads are running on this particular process. > The threads are cleaned up and exit. The thread _ID_ is continually > increasing. > > Is this going to cause a problem when the thread ID exceeds some value? > Do I have to force the server process to recycle periodically? > ... > > > _______________________________________________ Glasgow-haskell-users mailing list [email protected] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
