У меня есть один xml-файл, и каждый новый поток программы (BHO) использует тот же файл Tinyxml.Tinyxml Multi Task
каждый раз, когда новое окно открывается в программе, он запускает этот код:
const char * xmlFileName = "C:\\browsarityXml.xml";
TiXmlDocument doc(xmlFileName);
doc.LoadFile();
//some new lines in the xml.. and than save:
doc.SaveFile(xmlFileName);
Проблема заключается в том, что после первого окна добавляет новые данные в XML и сохраняет его, следующий окно не может добавить к нему. хотя следующий может читать данные в xml, он не может писать на него.
Я думал о двух возможностей, чтобы сделать его работу, но я не знаю, как их реализовать:
- уничтожить объект DOC, когда я сделал с ним.
- Некоторая функция в библиотеке Tinyxml для выгрузки файла.
Любая помощь или лучшее понимание проблемы будет замечательным. Спасибо.
мой вопрос был, как очистить? и что именно я должен убрать? – shaimagz
Я думаю, что в этом случае лучше всего разделить XML-документ между потоками и отправить его пакетные задания из каждого потока. Пакетное задание будет записано в xml-файл и сохранено в разделе блокировки/критики. – Kiril
Совместное использование объектов между потоками еще не на моем уровне программирования, но я попробую. Благодарю. – shaimagz