• Необходимо найти правильный подход к решению задачи на C#?

    2. Не избыточна ли тут ConcurrentQueue?


    Вместо неё лучше использовать System.Threading.Channels (https://www.stevejgordon.co.uk/an-introduction-to-...)
    3. Как сообщить основному потоку из Task.run() что все готово к обновлению карт? Я понимаю что есть Task.Result, но если Task выполняется постоянно (while true), смогу ли я это использовать?

    При помощи канала.
    А Task.Result испольщовать не следует

    В остальном всё звучит правдоподобно
    Ответ написан
    Комментировать
  • Что означает такая сигнатура функции?

    gbg
    @gbg Куратор тега C++
    Любые ответы на любые вопросы
    Это какие-то макросы. В нормальных IDE можно ткнуть в непонятное и сделать Go To Definition и посмотреть, что это такое.

    Такие макросы обычно появляются у всяких кроссплатформенных штуковин с динамической линковкой - когда нужно учесть особенности разных компиляторов и ОС.
    Ответ написан
    Комментировать
  • Что означает такая сигнатура функции?

    @res2001
    Developer, ex-admin
    Это скорее всего макросы, определенные где-то в заголовочных файлах. Поищите поиском по "#define _CMDINP" по исходникам библиотеки.

    Скорее всего _CMDIMP для компилятора микрософт преобразовывается в __declspec( dllimport ). Для gcc макрос не определен.
    _CMDAPI это видимо что-то вроде stdcall или cdecl, т.е. соглашения о вызовах.
    Ответ написан
    Комментировать