Доброго времени. Пришлось написать native messaging клиента для google chrome. Как это работает: «браузерная часть экстеншена» кидает асинхронное сообщение, поднимая коннект к нативному приложению, оно стартует и начинает слушать stdio потоки. Точнее, с одного читает, через другой общается в обратную сторону. Возникла проблема - после закрытия браузера, нативное приложение не завершается. Ещё смущает странная магия - в приложении написан бесконечный цикл, слушающий поток, но реально начинает работать только когда в потоке появились данные. Собственно, что хотел спросить - никто не работал с этим велосипедом? Как обработать ситуацию, когда вкладка с моим приложением или браузер закрываются. Беглый поиск по событиям в экстеншенах и общих браузерных не дал ничего, кроме пары тредов на stackoverflow, где народ жалуется, что обработчики событий даже если и вызываются, отработать уже не успевают.
Вопрос: как быть и не приходилось ли кому-нибудь решать такую задачу?
Форум —
Development

