Это более общий вопрос, поскольку я не могу быть конкретным с фрагментами кода, поэтому, если возможно, ответьте в общем виде.Синхронизированный метод в PHP Thread, вызванный двумя разными пользователями
Если я создаю расширенный класс Thread, и я определяю синхронизированный метод, когда 2 посетителя создают новый экземпляр этого класса и вызывает синхронизированный метод, он будет работать или будет работать, только если он вызывается 2 раза тот же пользователь?
Я пытаюсь достичь: каждый посетитель открывает поток, так что последовательность команд запускается параллельно с обычным скриптом, но я не хочу, чтобы эта последовательность команд запускалась больше посетителей в в то же время.
Я знаю, вопрос не слишком специфичен, но я не нашел никаких документов четко объяснить это ..
Примечания: Я прихожу с Java, поэтому некоторые термины могут быть неправильны для PHP.
EDIT: «Разрабатывайте то, что вы имеете в виду, когда говорите», открывается поток, так что последовательность команд выполняется параллельно с обычным сценарием »и« Я не хочу, чтобы эта последовательность команд запускалась больше посетителей в то же время." ».
- 2 Различные посетители получают доступ к
script.php
в то же время. script.php
имеет где-то внутри:$commands = new <class that extends Thread>();
$commands-><synchronised method>();
- посетителей 2 ждет, пока Посетителя 1 по
$commands-><synchronised method>();
завершается, и только затем запускает его$commands-><synchronised method>();
.
Это цель.
Можете ли вы уточнить, что вы имеете в виду, когда говорите «открывает поток, чтобы последовательность команд выполнялась параллельно с обычным сценарием» и «Я не хочу, чтобы эта последовательность команд выполнялась больше посетителей в в то же время." Просьба также привести пример, который иллюстрирует, что вы имеете в виду. –
@ DanielA.Thompson Edited. –