2013-03-03 5 views
0

Я планирую предложить моей команде разработчиков, что мы начинаем смотреть на lua вместо C++ для проекта, над которым мы в настоящее время работаем. По этому вопросу у меня есть вопрос, который мне нужно прояснить первым.Lua, threads и исключения C++

С текущим SDK нам не разрешено использовать исключения C++ из-за того, что он не является безопасным в многопоточных приложениях (созданных с помощью этого SDK). На самом деле, это разрешено, просто обескураженно ... однако программа не будет компилироваться, если мы не пройдем -fno-exceptions, поэтому ... да ...

В любом случае. Поскольку Lua работает в своей собственной VM и является чистым C ... Будут ли исключения в Lua «безопасными»?

+0

Возможно, вы пропустили тег ... о каком SDK вы говорите? – nvoigt

+0

Это проприетарный SDK, который мы используем на встроенных устройствах, с которыми мы работаем. –

+2

FYI: Lua - * тоже * не потокобезопасный. Поэтому, если вы отказываетесь от исключений из-за отсутствия потокобезопасности, я не понимаю, как это вам поможет. –

ответ

1

Если код С, составляющий интерпретатор LUA, в порядке относительно ограничений вашего SDK, то все, что закодировано в LUA и выполнено с этим интерпретатором, тоже прекрасное. Но если интерпретатор LUA сам работает с вашим неназванным SDK ... это вопрос, на который могут ответить только вы или поставщик SDK.