# Класс Thread

(PECL pthreads >= 2.0.0)

## Введение

Когда вызван стартовый метод Thread, код метода run будет запущен в отдельном потоке, параллельно.

После отработки метода run, Thread сразу же завершит работу. Он будет присоединён путём создания Thread в нужное время.

Внимание

Если полагаться на движок для определения, когда Thread будет присоединён, можно столкнуться с неожиданным поведением. Поэтому необходимо, по возможности, управлять присоединением в явном виде.

## Обзор класса

class Thread extends Threaded implements Countable, Traversable, ArrayAccess {
/* Методы */
public function getCreatorId(): int
public static function getCurrentThread(): Thread
public static function getCurrentThreadId(): int
public function getThreadId(): int
public function isJoined(): bool
public function isStarted(): bool
public function join(): bool
public function start(int `$options` = ?): bool
/* Наследуемые методы */
public function Threaded::chunk(int `$size`, bool `$preserve`): array
public function Threaded::count(): int
public function Threaded::extend(string `$class`): bool
public function Threaded::isRunning(): bool
public function Threaded::isTerminated(): bool
public function Threaded::merge(mixed `$from`, bool `$overwrite` = ?): bool
public function Threaded::notify(): bool
public function Threaded::notifyOne(): bool
public function Threaded::pop(): bool
public function Threaded::run(): void
public function Threaded::shift(): mixed
public function Threaded::synchronized(Closure `$block`, mixed `...$args`): mixed
public function Threaded::wait(int `$timeout` = ?): bool
}

## Содержание

- Thread::getCreatorId — Идентификация
- Thread::getCurrentThread — Идентификация
- Thread::getCurrentThreadId — Идентификация
- Thread::getThreadId — Идентификация
- Thread::isJoined — Определение состояния
- Thread::isStarted — Определение состояния
- Thread::join — Синхронизация
- Thread::start — Выполнение

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open