Я вот не совсем понял. Обязательно клиентский код сам должен заботиться об удалении обработчика? (Внутри блока remove_handler_event)