PureBasic

WaitThread()

Синтаксис

Result = WaitThread(Thread [, Timeout])

Описание


Приостанавливает выполнение программы до завершения указанного потока 'Thread', или до истечения времени, заданного необязательным параметром Timeout (в миллисекундах). Если поток уже завершился, функция немедленно возвращается.

Параметры

Thread Номер, идентифицирующий Поток, завершение которого требуется подождать. Этот Номер является результатом функции CreateThread(), полученным при создании данного Потока.
Timeout (дополн.) Тайм-аут, необязательное время ожидания в миллисекундах.

Возвращаемое значение

Возвращает не нулевое значение, если поток завершился, или нуль, если был достигнут тайм-аут.

Пример

Procedure PrintStuff(*Interval)
    For i = 0 To 10
        PrintN(".")
        Delay(*Interval)
    Next
EndProcedure

If OpenConsole()
    thread = CreateThread(@PrintStuff(), 500)
    If thread
        ; Ждём завершения потока прежде чем продолжать.
        ; Попробуйте закомментировать вызов функции WaitThread и посмотрите что получится.
        WaitThread(thread)

        For i = 0 To 10
            PrintN("A")
            Delay(1000)
        Next
    EndIf
EndIf

Поддерживаемые OS

Все

<- WaitSemaphore() - Оглавление Thread