Как сделать ConfigObj.write() поточно-ориентированным?
У меня есть кусок кода, где используется ConfigObj. Во время выполнения я должен сделать некоторые манипуляции с моим файлом конфигурации. Поэтому я использую ниже кусок кода (грубо пишу)
obj_config = ConfigObj("config.txt")
#manipulating config.txt
obj_config.write()
obj_config.reload()
Теперь проблема в том, что он находится в общем классе Библиотеки и используется в нескольких классах и сценариях. Таким образом, в общей среде, когда несколько классов пытаются вызвать класс API, возникает проблема конфликта потоков. Несколько потоков пытаются изменить одно и то же config.txt
файл. Это приводит к ненормальному поведению, например, удаление содержимого файла или вставка новой строки.
Так, как сделать эту проблему блокировкой чтения-записи или потокобезопасным решением?
Это не может быть решено с помощью portalocker
поскольку запись вызывается из класса ConfigObj, а не самого класса API.