0

我的配置功能有问题。单击按钮时,我想重新加载配置文件。

我调用函数

std::string filepath = "../../configurationfile.txt"
log4cxx::PropertyConfigurator::configureAndWatch(log4cxx::File(filepath));

我也试试这个:

log4cxx::PropertyConfigurator::configure(log4cxx::File(filepath));

但文件仅在 60 秒后重新加载。

您对如何强制重新加载文件有任何想法吗?第一次,我使用 configureAndWatch 功能进行配置。

谢谢你的帮助。

4

1 回答 1

1

我不知道你是否在这个问题上需要帮助,但我还是会继续回答这个问题。

configureAndWatch() 通常用于生成一个线程,该线程将定期检查配置文件的更改。默认延迟为 60 秒,您可以使用此修改该值

int delay_in_milliseconds = /* Small delay value */
log4cxx::PropertyConfigurator::configure(log4cxx::File(filepath), delay_in_milliseconds);

但是,我建议不要使用这种技术,因为它会产生不必要的检查。而是尝试使用与调用的按钮相关联的单独函数

LogManager.resetConfiguration();

其次是

PropertyConfigurator.configure(filepath);

原因是使用 configure() 调用现有配置不会立即清除或重置。虽然,我还没有尝试过,但我相信调用 resetConfiguration() 函数应该在那一刻应用更改。

于 2013-07-09T18:20:40.823 回答