|
From: Todd R. <ric...@pr...> - 2003-04-17 18:00:09
|
I just started using valgrind and it has already found 2 nasty buffer
overruns for me. However, it only works on my single threaded programs. I
have a MT server that uses a thread pool for incoming socket requests - one
thread poll()s on all fds and then queues up work objects to be run by slave
threads. My problem is that once the master thread is started, it runs
properly in a poll() loop (with a few second timeout), but other threads
receive almost no cpu time, including the original main thread that started
the master poller! At first I thought all other threads were hung
indefinitely, but I left the program run for 30+ minutes and the main thread
finally printed out a debug string after the pthread_create() so slowly that
it did so one character at a time over several minutes.
I am using Redhat 8 updated to all current patches which includes glibc
2.3.2 and have tried both vgrind 1.9.5 and the 2.0 cvs branch
Thanks,
Todd
|