Как выполнить событие в режиме реального времени - PullRequest
0 голосов
/ 13 октября 2019

Я пытаюсь использовать qt для запуска функции в режиме реального времени, но qt работает так, что когда вы вызываете функцию, ответ приходит только тогда, когда функция выполняется. Как сделать так, чтобы когда вы вызывали функцию и в ней происходило событие, я мог остановиться и подождать какое-то событие, прежде чем двигаться дальше.

P / s Мне действительно жаль мой английский. Я надеюсь, что вы меня понимаете.

1 Ответ

0 голосов
/ 13 октября 2019

Функции, как правило, и всегда в C / C ++, являются атомными вычислительными единицами. То есть после вызова они не могут быть приостановлены , однако вы можете приостановить выполнение потоков. Таким образом, возможный обходной путь к тому, что вы хотите, может состоять в том, чтобы выполнить вашу функцию в своем собственном потоке и приостановить ее, но как только вы приостановите ее, вы не сможете возобновить ее из функции, так как она приостановлена. Вам понадобится какой-нибудь контроллер для приостановки и возобновления функций, вам неизбежно придётся кодировать планировщик потоков более или менее похожим на то, что есть в операционных системах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...