Зачем в трейдере такие расколбасы?
У меня синхронизируетса 3 нити:
1)поток клиента: рисование интерфейса, ввод клавы/мышки, прочие хуки.
2)Контрольный поток : обслуживает радар, разбирает и диспетчирует очередь пакетов проги, отслеживает состояние ядра программы, при необходимости формирует события для 3го потока.
3)рабочий поток: в нем крутитса скрипт и обрабатываютса события передаваемые скрипту
в итоге даже самым стремным скриптом сложно вывести программу из строя. На край этот поток завершитса с ошибкой или может быть "убит" и запущен заново.
дедлоков нет тока благодаря миниальной вложености блокировок и соблюдения "иерархии"
__________________
читернуть бы ништяг
|