Комментарии 4
А что это вообще такое - "геометрическое ядро C3D" ? Что-то аппаратное или чисто софтверное ?
Добрый день! Геометрическое ядро – это специализированный инструмент разработки программного обеспечения (SDK), отвечающий за построение, редактирование, визуализацию и конвертацию геометрических моделей. По сути это ключевой компонент для создания инженерного программного обеспечения.
Механизм Enter-Exit создаёт блокировку "прерываний" внутри процесса, это выглядит как некий аналог GIL или Enable/Disable interrupt в контроллере или Enter/LeaveCriticalSection, поэтому, должна быть гарантия что внутри этого процесса код будет выполнен за фиксированное время и не возникнет таймаутов. Чистое многопроцессорное (не просто многопоточное) исполнение позволяет делать некий эквивалент вложенных прерываний. Поэтому конечно хотелось бы чтобы общение с процессом шло через FIFO или SharedMemory (с управлением оной), это позволит избежать дублирования внешних стеков данных, которые должны как-то ещё обрабатывать критические секции (привет всевозможным флажкам состояний) особенно если там динамическая аллокация памяти без специальных Interprocess-средств и управление кучей.
Многопоточности — да! Как работать с геометрическим ядром C3D в многопоточном приложении