Информация об изменениях

Сообщение Re[3]: Как использовать graphics из нативного кода от 29.10.2016 15:48

Изменено 29.10.2016 15:58 NNektov

G>Как рационально передавать данные из нативного кода в tiscript, как минимизировать накладные расходы при передаче?
G>Если для каждой вершины вызывается функция из нативного кода, это правильно?
*
Понятно, что N вызовов tis -> с++ по 1 кусочку данных хуже, чем 1 вызов массива или объекта из N кусков данных.
Накладные расходы на вызовы методов и внутренние проверки корректности данных (если, конечно, они есть).
Т.е. имеет смысл 1 раз забирать массив данных, и в tis бегать уже по этому массиву.

Как можно ускорить передачу?
*
Кроме варианта с массивами, можно устранить сам факт передачи данных, т.е. всю максимальное кол-во
работы с данными и саму отрисовку — все поместить в нативный код, а в tis оставить все "врапперы", обработки событий
и всякое наследуемое общее для других модулей и бехавиоров.

Т.е я для особенно требующих производительности модулей писал связку:
sciter behavior на с++ (есть в примерах кода) + behavior (наследующий несколько общих для проекта методов, чтобы не повторять код) на tis.
Re[3]: Как использовать graphics из нативного кода
G>Как рационально передавать данные из нативного кода в tiscript, как минимизировать накладные расходы при передаче?
G>Если для каждой вершины вызывается функция из нативного кода, это правильно?
*
Понятно, что N вызовов tis -> с++ по 1 кусочку данных хуже, чем 1 вызов массива или объекта из N кусков данных.
Накладные расходы на вызовы методов и внутренние проверки корректности данных (если, конечно, они есть).
Т.е. имеет смысл 1 раз забирать массив данных, и в tis бегать уже по этому массиву.

Как можно ускорить передачу?
*
Кроме варианта с массивами, можно устранить сам факт передачи данных, т.е. максимальное кол-во
работы с данными и саму отрисовку — все поместить в нативный код, а в tis оставить все "врапперы", обработки событий
и всякое наследуемое общее для других модулей и бехавиоров.

Т.е я для особенно требующих производительности модулей писал связку:
sciter behavior на с++ (есть в примерах кода) + behavior (наследующий несколько общих для проекта методов, чтобы не повторять код) на tis.