У меня есть код, в котором три задачи выполняются практически одновременно. Каждая задача меняет логическое значение с ложного на истинное после завершения. Только после того, как все три значения станут истинными, я хочу, чтобы выполнение продолжилось. Однако при использовании моего кода, который я придумал, он ждет только завершения первой задачи, а затем выходит из цикла while. Разве оператор and && не подходит для этого?
Код: Выделить всё
bool taskOneReady = false;
bool taskTwoReady = false;
bool taskThreeReady = false;
/*When a task finishes, it will flip the boolean value to true, it looks somewhat like this
//Execution of task one
taskOneReady = true;
*/
while (!taskOneReady && !taskTwoReady && !taskThreeReady)
{
//Wait for a bit (around a second) before trying again
}
//Code to be executed after all three tasks are finished
Я знаю, что плохо разбираюсь в программировании, и ошибка, вероятно, очевидна для многих из вас, но я буду признателен за полезные ответы/комментарии.
Подробнее здесь:
https://stackoverflow.com/questions/793 ... s-are-true