Потоки не обрабатывают никаких запросов (требуется помощь в многопоточном приложении) - PullRequest
0 голосов
/ 10 марта 2010

Я работаю в многопоточном приложении, приложение сталкивается с некоторой проблемой при обработке запроса. Когда я продолжал загружать многопоточное приложение, оно некоторое время работало нормально. Через некоторое время он не может обработать любой запрос. В этой ситуации при вводе этой команды

ps -eLF | многопоточный grep

все темы отображаются так, я хочу понять это "13:45?" что означает этот знак вопроса (?)?

root 15818 8838 15833 0 1036 2731192 137308 4 13:45? 00:00:02 многопоточность
root 15818 8838 15834 0 1036 2731192 137308 4 13:45? 00:00:02 многопоточность
корень 15818 8838 15835 0 1036 2731192 137308 4 13:45? 00:00:01 многопоточность
root 15818 8838 15836 0 1036 2731192 137308 4 13:45? 00:00:00 многопоточность
корень 15818 8838 15837 0 1036 2731192 137308 1 13:45? 00:00:11 многопоточность
корень 15818 8838 15838 0 1036 2731192 137308 2 13:45? 00:00:00 многопоточность
корень 15818 8838 15839 0 1036 2731192 137308 3 13:45? 00:00:00 многопоточность
корень 15818 8838 15840 0 1036 2731192 137308 2 13:45? 00:00:10 многопоточность
root 15818 8838 15841 0 1036 2731192 137308 2 13:45? 00:00:12 многопоточность
корень 15818 8838 15842 0 1036 2731192 137308 3 13:45? 00:00:06 многопоточность
корень 15818 8838 15843 0 1036 2731192 137308 2 13:45? 00:00:01 многопоточность
корень 15818 8838 15844 0 1036 2731192 137308 4 13:45? 00:00:02 многопоточность
корень 15818 8838 15845 0 1036 2731192 137308 5 13:45? 00:00:13 многопоточность
корень 15818 8838 15846 0 1036 2731192 137308 4 13:45? 00:00:01 многопоточность
корень 15818 8838 15847 0 1036 2731192 137308 4 13:45? 00:00:00 многопоточность
root 15818 8838 15848 0 1036 2731192 137308 4 13:45? 00:00:01 многопоточность
корень 15818 8838 15849 0 1036 2731192 137308 4 13:45? 00:00:07 многопоточность
корень 15818 8838 15850 0 1036 2731192 137308 2 13:45? 00:00:00 многопоточность
root 15818 8838 15851 0 1036 2731192 137308 4 13:45? 00:00:03 многопоточность
корень 15818 8838 15852 0 1036 2731192 137308 2 13:45? 00:00:06 многопоточность

Ответы [ 2 ]

1 голос
/ 10 марта 2010

"?" просто означает, что процессы не имеют «управляющего TTY», что означает, что они в основном работают как демоны.

Поскольку вы ничего не знаете о том, что представляет из себя ваша программа, на каком языке она написана или что она должна делать, довольно сложно оказать гораздо большую помощь:

0 голосов
/ 10 марта 2010

Сборка с символами отладки на (-g), затем с помощью gdb присоединиться к идентификатору процесса, например:

gdb multithread
att 15818

В gdb вы можете использовать «thread apply all where», чтобы получить обратный след того, где находится каждый поток. Это должно сказать вам, что они ждут.

...