c++ - 日志记录设施和 Qt

标签 c++ qt logging

您在 Qt 中使用哪些日志记录工具?

你会选择 qDebug()、qWarning()、qCritical()、qFatal() 方法,还是 Log4cpp(Log4cplus 等)之类的方法,或者一些自定义代码?

最佳答案

如果您只是在单线程中工作,qDebug 和类似的工作非常好,或者您可以通过在 QT 5.0+ 中使用 qInstallMessageHandler 或在旧版本中使用 qInstallMsgHandler 安装自己的处理程序来对其进行一些修改。

注意:旧版本的 qDebug() 等,您使用 qInstallMsgHandler(现已弃用,例如 http://doc.qt.io/archives/4.6/qtglobal.html#qDebug )不是线程安全的。如果您使用线程,它们会严重崩溃/中断。它在内部使用 QTextStream,它是可重入的,但不是线程安全的。

关于c++ - 日志记录设施和 Qt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1542799/

相关文章:

c++ - OpenGL 纹理不显示

c++ - Qml访问 ListView 项

logging - 防止 Rails 3.1(webrick?)记录资源渲染

c++ - cppsqlite3中的sqlite3的sqlite3_exec是什么(如果有的话)?

c++ - 如何在此程序中输入 EOF 字符?

python - 属性错误 : QDialog object has no attribute setCentralWidget

c++ - 错误 : 'QGeoCoordinate' does not name a type

php - 查询密集型网站中的查询日志记录场景

php - ZendFramework 日志错误

c# - 恢复文件拖放