Цитата:
Сообщение от varz
по проблеме: вероятно что VMJet в качестве определения зависания Трэда определяет какое-то количество времени, после чего убивает Трэд. Имею ввиду МэйнТрэд скрипта, все остальные потомки уже в совокупности его.
Как вариант глушить с записью (SetProperties..)Трэд скрипта и возобновлять его через внешнее событие (отдельное правило)
Еще вариант: концепция множественности Главных Контроллеров с их границами полномочий, как в свое время были организованы Станционные Контроллеры..
Но все это ведет к перелопачиванию скриптов.
|
Создаваемые нами потоки там равноправны и предел на каждый поток свой, НЯЗ. Или лимит опкодов, или времени. У меня на две секунды замирает перед исключением. Можно попробовать создавать много тредов, каждый из которых обработает свою часть всех светофоров.
А если перелопачивать, то надо делать ленивую инициализацию, в рамках отдельных светофоров это трудно, а вот для станционных контроллеров будет хорошо. Было бы здорово, если светофоры в удаленных частях маршрута до которых игрок никогда не доезжал вообще не инициализировались.