Nikon SDK позволяет использовать систему запросов/ответов с ПК на камеру через USB с помощью языка программирования C. При создании двух объектов камеры в двух отдельных потоках невозможно отправить две команды одновременно двум отдельным камерам. Одна камера получит команду и отправит ответ, а затем вторая камера получит команду и отправит ответ. Я думаю, это связано с тем, что DLL, к которой обращается Nikon SDK, использует глобальные переменные. DLL не имеет открытого исходного кода, поэтому я не могу это изменить или проверить. Я сделал две отдельные копии DLL, и каждый поток имеет доступ к отдельной копии. Можно ли отправить две команды и получить ответ одновременно?
Подробнее здесь: https://stackoverflow.com/questions/434 ... -reentrant