В PHP 7.1 x64 на окнах с apache 2.4 x64:
extension_dir = "ext" не работает для меня,
абсолютный путь: extension_dir = " C: \ DEV \ PHP71 \ ext \ "работал хорошо
Вы можете использовать события добавления / удаления аксессоров , чтобы события, связанные с внешним событием, «перенаправлялись» внутреннему слушателю
public event EventHandler<MessageReceivedEventArgs> MessageReceived {
add { this.listener.MessageRecieved += value; }
remove { this.listener.MessageRecieved -= value; }
}
. Это означает, что вам необходимо создать событие в слушателе, но преимущество состоит в том, что нет других каналов для подключения события.
Как уже было сказано, вы можете иметь настраиваемую логику подписки, используя обработчики добавления и удаления для вашего события.
Обратите внимание, что этот дизайн имеет проблему как есть. Вы указываете, что ваш слушатель вызывает событие в собственном потоке. По умолчанию обработчики будут вызываться в потоке, который вызвал событие (в вашем случае, поток слушателя). У вас есть несколько вариантов.
Вы можете сделать это с помощью событие, или вы можете создать в своем основном классе метод с именем ReceiveMessage () и вызвать его из слушателя (а затем вызвать событие оттуда).