This is the mail archive of the mailing list for the pthreas-win32 project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

strange pthread_create cap


I'm having some trouble with pthreads-win and sockets, wondering if anyone can help. I have a test setup with a loop which iterates a number of times. Inside the loop, I create a thread on which I run an SSL server socket. After the thread is created, I connect an SSL Client socket to the server socket, then disconnect it, disconnect the server socket, and issue a pthread_join.

Using this setup (one thread created with pthread_create at any time), I cannot create anymore threads after 10-15 such iterations (in rare cases - say if I run a 200-iteration loop, I might be able to create threads again once I reach iteration 50 or so). I believe this to be an issue with my SSL client socket implementation, because everything works well if I don't connect a client socket during the iteration. It also works well if I use a non-SSL server/client socket.

However, I thought I'd ask here: is there any reason why pthread_create would return EAGAIN in such a setup? The handle count varies very slightly during the iterations but does not increase over the run time. The memory does increase due to my test setup, but at the maximum peak it is no where near close to using up all system resources.

Can it be some sort of problem with the release of the socket (win sockets are not guaranteed to be released as soon as closesocket returns) ?

Thank you in advance,

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]