Невозможно использовать библиотеку в другом потоке - PullRequest
0 голосов
/ 02 мая 2018

Я создаю простое приложение, которое архивирует файлы, которые выбирает пользователь. Я кодирую его на C ++ и использую библиотеку Zipper для архивирования файлов. Все прекрасно работает, когда я использую библиотеку в том же потоке, что и пользовательский интерфейс, но выдает это исключение, если я запускаю ее из другого потока:

Необработанное исключение в 0x75D33EF2 в Backup.exe: Microsoft C ++ исключение: std :: исключение в ячейке памяти 0x076FF6A8.

Мой код для создания темы:

CreateThread(NULL, 0, ZipFiles, NULL, 0, NULL);

И код внутри метода:

Zipper zipper("zipfile.zip");
zipper.add("somefile.txt");
zipper.close();

Исключение выдается в первой строке. Моя проблема здесь, честно говоря, интерпретация. Я делаю что-то не так в коде, или есть вероятность, что эта библиотека не может быть использована другим потоком?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...