1

Тема: Поток в котором вызывается SetUpdateCallback

В документации естественно таких данных нет, но может кто знает ?

Когда вызывается callback SetUpdateCallback от CreateDataSource - он вызывается всегда только в одном потоке, как в Lua, так и в С++ ?

Кстати интересен данный вопрос и касаемо функции OnQuote.

Вопрос естественно связан с синхронизацией доступа в случае - многотонной SetUpdateCallback .

2 (2022-10-10 09:04:24 отредактировано swerg)

Re: Поток в котором вызывается SetUpdateCallback

Serg_ пишет:

callback SetUpdateCallback от CreateDataSource - он вызывается всегда только в одном потоке, как в Lua, так и в С++ ?

Да, конечно. Терминал же не знает что вызывается: Lua-функция или подставленный код на C++. Поэтому с точки зрения терминала вызов callback-функций происходит всегда единообразно.

3

Re: Поток в котором вызывается SetUpdateCallback

Спасибо.
То есть в Lua - SetUpdateCallback  - всегда вызывается только в одном потоке ?

4

Re: Поток в котором вызывается SetUpdateCallback

Не совсем понял вопрос.
Функцию SetUpdateCallback  вы вызываете где угодно.
Но назначенный ею callback (т.е. функция, переданная параметром в SetUpdateCallback) будет вызываться только в основном потоке терминала.

5

Re: Поток в котором вызывается SetUpdateCallback

Да, я про это и спрашивал. Еще раз спасибо.