开发者

Threads are not processing any requests(Help Required In Multithreading application)

I am working in multithreading application, application is facing some problem while processing the request. Wh开发者_开发百科en i kept load on multithreaded application,it is working fine up to some time.After some time it is not able to process any request.At this situation when type this command,

ps -eLF | grep multithread

all threads are showing like this,I want to understand this "13:45 ?" what this question mark(?) actually mean?

root 15818 8838 15833 0 1036 2731192 137308 4 13:45 ? 00:00:02 multithread

root 15818 8838 15834 0 1036 2731192 137308 4 13:45 ? 00:00:02 multithread

root 15818 8838 15835 0 1036 2731192 137308 4 13:45 ? 00:00:01 multithread

root 15818 8838 15836 0 1036 2731192 137308 4 13:45 ? 00:00:00 multithread

root 15818 8838 15837 0 1036 2731192 137308 1 13:45 ? 00:00:11 multithread

root 15818 8838 15838 0 1036 2731192 137308 2 13:45 ? 00:00:00 multithread

root 15818 8838 15839 0 1036 2731192 137308 3 13:45 ? 00:00:00 multithread

root 15818 8838 15840 0 1036 2731192 137308 2 13:45 ? 00:00:10 multithread

root 15818 8838 15841 0 1036 2731192 137308 2 13:45 ? 00:00:12 multithread

root 15818 8838 15842 0 1036 2731192 137308 3 13:45 ? 00:00:06 multithread

root 15818 8838 15843 0 1036 2731192 137308 2 13:45 ? 00:00:01 multithread

root 15818 8838 15844 0 1036 2731192 137308 4 13:45 ? 00:00:02 multithread

root 15818 8838 15845 0 1036 2731192 137308 5 13:45 ? 00:00:13 multithread

root 15818 8838 15846 0 1036 2731192 137308 4 13:45 ? 00:00:01 multithread

root 15818 8838 15847 0 1036 2731192 137308 4 13:45 ? 00:00:00 multithread

root 15818 8838 15848 0 1036 2731192 137308 4 13:45 ? 00:00:01 multithread

root 15818 8838 15849 0 1036 2731192 137308 4 13:45 ? 00:00:07 multithread

root 15818 8838 15850 0 1036 2731192 137308 2 13:45 ? 00:00:00 multithread

root 15818 8838 15851 0 1036 2731192 137308 4 13:45 ? 00:00:03 multithread

root 15818 8838 15852 0 1036 2731192 137308 2 13:45 ? 00:00:06 multithread


The "?" just means that the processes do not have a "controlling TTY", which just means that they're running as daemons, basically.

Since you don't way anything about what your program is, what language it's written in, or what it's supposed to do, it's kind-of hard to provide much more assistance :-)


Build with debugging symbols on (-g), then use gdb to attach to the process id, for example:

gdb multithread
att 15818

In gdb, you can then use "thread apply all where" to get a backtrace of where every thread is. That should tell you what they are waiting for.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜