pthreads є об’єктно-орієнтований API, який надає всі інструменти, необхідні для багатопоточності в PHP. Програми PHP можуть створювати, читати, писати, виконувати та синхронізувати з потоками, робочими та потоковими об’єктами.
В обчислювальній техніці потоки POSIX, широко відомі як pthreads, — це модель виконання, яка існує незалежно від мови програмування, а також модель паралельного виконання. Це дозволяє програмі контролювати кілька різних потоків роботи, які збігаються в часі.
Щоб створити новий потік, вам потрібно визначити клас, який розширює клас Thread, наданий Pthreads. У цьому класі ви замінюєте метод run(), який є кодом, який буде виконано в новому потоці. Потім ви можете створити екземпляр цього класу та викликати його метод start(), щоб запустити новий потік.
Бібліотека потоків C++11 — це бібліотека C++ RAII, захищена від винятків, переносима серед ОС, які підтримують потоки. pthread — це бібліотека C лише для Unix для потокової обробки (що бібліотека потоків C++11 фактично використовує в реалізації!)
Нитка є невеликий блок інструкцій, які можуть бути виконані процесором. Програма використовує потоки, якщо вона вимагає паралелізму. Іншими словами, за допомогою однієї програми ми можемо обробляти кілька одиниць інструкцій паралельно.
pthreads, за своїм визначенням, потоки простору користувача. Це означає, що ОС намагатиметься створити середовище простору користувача для pthread: стек потоку та інші ресурси. І коли pthread запускається, він запускатиметься в режимі користувача, а не в режимі ядра.