Size: a a a

1С, БСП, DevOps и Архитектура

2020 August 13

AO

Andrey Ovsiankin in 1С, БСП, DevOps и Архитектура
не в стек, в массив
источник

‌‌‎infactum in 1С, БСП, DevOps и Архитектура
в кортеж
источник

AO

Andrey Ovsiankin in 1С, БСП, DevOps и Архитектура
vector - это массив же
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
тупл это кортеж
источник

VM

Valery Maximov in 1С, БСП, DevOps и Архитектура
точно
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
в итоге что? из кортежа извлекается ссылка на функцию и вызывается с переданными аргументами?
источник

VM

Valery Maximov in 1С, БСП, DevOps и Архитектура
ага
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
магия
источник

VM

Valery Maximov in 1С, БСП, DevOps и Архитектура
это как раз из 17 c++
источник

VM

Valery Maximov in 1С, БСП, DevOps и Архитектура
в 11 я такого не припомню
источник

‌‌‎infactum in 1С, БСП, DevOps и Архитектура
ZEEGIN
в итоге что? из кортежа извлекается ссылка на функцию и вызывается с переданными аргументами?
Чот не..
Смысл в том, что надо сформировать "метаданные" для метода, которые мы будем потом отдавать платформе.
Вызывать какую-либо функцию, передав ей параметры в виде кортежа можно. Но количество элементов кортежа должно быть известно во время компиляции.
Поэтому шаблон, который называется AddMethod грубо говоря развернется в кучу функций вида
ДобавитьПроцедуруС1Аргументом(...)
ДобавитьПроцедуруС2Аргументами(...)
ДобавитьФункциюС2Аргументами(...)
итд, внутри каждого уже размер кортежа фиксирован и никаких динамических выделений памяти нет.
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
а корутин ожидает окончания своего исполнения до возврата в основной поток?
источник

‌‌‎infactum in 1С, БСП, DevOps и Архитектура
Если это мне вопрос то я его не понял :)
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
[f, c] будет исполняться асинхронно или блокировать поток?
источник

‌‌‎infactum in 1С, БСП, DevOps и Архитектура
ZEEGIN
[f, c] будет исполняться асинхронно или блокировать поток?
В том куске кода нет никаких корутин. Это просто лямбда.
А [f,c] это те переменные, которые будут захвачены по значению. Потому что лямбда то будет вызвана когда-то сильно позже (когда платформа по просит нужный метод исполнить).
источник

AO

Andrey Ovsiankin in 1С, БСП, DevOps и Архитектура
ZEEGIN
[f, c] будет исполняться асинхронно или блокировать поток?
это просто код. В каком потоке запущен будет, в таком и выполнится
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
понял, интересно, я подумал сначала что тут вызывается исполнение асинхронно и поток выполнения в 1с продолжится не дожидаясь резкльтата
источник

‌‌‎infactum in 1С, БСП, DevOps и Архитектура
Кстати про асинхронность - вообще у меня изначально было в планах  показать, как реализовывать синхронный апи ( у компоненты же только такой) для всяких "асинхронных" библиотек - когда надо дождаться результата из какого-то другого потока или таймаут выдать.
Но как-то до таких фич мы не дошли)) На первый раз только hello world.
источник

VM

Valery Maximov in 1С, БСП, DevOps и Архитектура
‌‌‎infactum
Кстати про асинхронность - вообще у меня изначально было в планах  показать, как реализовывать синхронный апи ( у компоненты же только такой) для всяких "асинхронных" библиотек - когда надо дождаться результата из какого-то другого потока или таймаут выдать.
Но как-то до таких фич мы не дошли)) На первый раз только hello world.
т.е. ждем вторую серию?
источник

‌‌‎infactum in 1С, БСП, DevOps и Архитектура
Пока не планировал. Проще что-нибудь готовое выложить) Не думаю что такие детали интересны широкой публике. Канал то про 1С в первую очередь.
источник