LINUX.ORG.RU

Возможно ли реализовать такое в Qt?


0

0

Сабж:

При помощи QProcess запускаются два, а то и больше процессов. По завершению каждого процесса выполняется некая функция, считывающая и обрабатывающая stdout этого процесса. Так вот, представим, что один процесс завершился, и запустилась эта самая функция обработки. Она работает долго. В это время завершается другой процесс, и вызывает ту же самую функцию.

Что произойдет? Функции будут выполняться последовательно или одновременно?

anonymous

>Функции будут выполняться последовательно или одновременно?

они будут выполняться кусками попеременно,
а вообще все зависит от ОС, ее версии и погоды на улице.

делать предположение о том как они будут выполняться это глупо.

anonymous
()
Ответ на: комментарий от anonymous

Точнее сказать, они будут выполняться "псевдопараллельно" :) И это при условии, что в Qt нет никакого механизма сериализации доступа к слотам, а его IMHO нет (автор не уточнил, но я погалаю, что будет использоваться именно сигнал processExited(), привязанный к какому-то слоту)

phoenix ★★★★
()
Ответ на: комментарий от anonymous

Конечно, руками это можно (и, возможно, нужно, в зависимости от задачи) сделать. Я говорил о встроенном механизме, и его судя по докам нет ("Slots are normal C++ functions and can be called normally; their only special feature is that signals can be connected to them.")

phoenix ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.