Serialize bridge command publication and report rejected lifecycle requests
This commit is contained in:
1 parent
8374c60b0e
commit
f731ac340d
3 files changed
+57
-106
No files matched your search
@@ -84,10 +84,11 @@ Payload копируется в byte array; его формат зависит
|
||||
|
||||
Перед stop/restart Kotlin сбрасывает controllers и останавливает внешние media workers.
|
||||
Worker снимает media-привязки, уничтожает instance, снимает standby/UDP-таймеры и уничтожает uasync.
|
||||
`instance_lite_stop()` ждёт до двух секунд: при timeout отсоединяет поток, поэтому возврат
|
||||
не гарантирует завершённый cleanup. Без опубликованного instance он возвращается сразу.
|
||||
Restart пересоздаёт instance и uasync. Дополнительный опрос is_running в bridge до 5с
|
||||
может увидеть ещё старое работающее ядро; подтверждение нового запуска — SERVICE_STARTED.
|
||||
`instance_lite_stop()` ждёт полный cleanup и pthread_join, включая startup до публикации instance;
|
||||
каждые две секунды ожидания пишет предупреждение, поток не отсоединяет. Повторный stop безопасен.
|
||||
Restart пересоздаёт instance и uasync. Возврат restart/updateSockets подтверждает принятие копии INI,
|
||||
ошибка очереди возвращается Kotlin; готовность нового запуска подтверждается SERVICE_STARTED.
|
||||
Fatal signal handlers принадлежат платформе: worker не заменяет их обработчиком с небезопасными locks/JNI/backtrace.
|
||||
Общие правила освобождения: `../../../doc/service_lifecycle.md`.
|
||||
|
||||
## Данные и конфигурация
|
||||
|
||||
Reference in new issue
Block a user