log4net的线程安全

2024-01-31

似乎有一些关于log4net是否线程安全的讨论,共识是框架是线程安全的,但appender不是,需要正确使用才能实现线程安全。有人可以对此进行一些说明,并可能给出以线程安全方式使用 RollingFileAppender 的示例吗?是否需要将其推入上下文?以某种方式锁定,或者什么?


根据这个link http://www.l4ndash.com/Log4NetMailArchive%2Ftabid%2F70%2Fforumid%2F1%2Fpostid%2F17279%2Fview%2Ftopic%2FDefault.aspx,RollingFileAppender 是线程安全的(就日志记录而言)。这是来自 log4net 的开发人员之一。他特别说这样的锁定是not您的代码中需要:

lock(logger)
{
  logger.Info("Hello!");
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

log4net的线程安全 的相关文章

随机推荐

  • 我可以限制 AWS Lambda 的并发调用吗?

    我有一个 Lambda 函数 该函数由对 S3 存储桶的 PUT 操作触发 我想限制此 Lambda 函数 使其一次仅运行一个实例 我不希望两个实例同时运行 我浏览了 Lambda 配置和文档 但没有看到任何明显的内容 我可以编写自己的锁定
  • 并行 linq 中的 let 子句是否强制并行计算?

    在 xamarin iOS 网站上有以下并行 linq 示例 from item in items AsParallel let result DoExpensiveWork item select result 这个可以不写吗 from
  • QnA 机器人无法正确显示表格格式

    我的 QnA 制造商知识库当前由 pdf 文件训练 http download microsoft com download 2 9 B 29B20383 302C 4517 A006 B0186F04BE28 surface pro 4
  • 更改 Laravel 刀片分隔符

    我知道您可以使用以下命令更改默认刀片分隔符 Blade setEscapedContentTags Blade setContentTags 但是我不知道应该把它放在哪里 这样它只会影响单个刀片模板 而不是把它放在app start glo
  • 类成员——Java 与 Python

    我现在从 Java 开始学习 Python 我尝试理解Python中类成员的概念 下面是一个 Java 示例程序 class Hello int x 0 void ex x 7 public static void main String
  • Fancybox 无法处理来自 Twitter API 的图像

    使用 Fancybox 2 下面的示例可以完美运行 省略其他代码 a class fancybox href https si0 twimg com profile images 2169856486 avatar jpg title so
  • 如何读取 Micronaut 中的应用程序属性?

    我使用指南将 AWS SES API 集成到我的 Micronaut Groovy 应用程序中在 micronaut 中发送邮件 http guides micronaut io micronaut email groovy guide i
  • 在 C++ 构造函数中分配内存的正确方法是什么?

    这是通过分配内存的正确方法new在 C 构造函数中 参数列表中的第一种方式 class Boda int memory public Boda int length memory new int length Boda delete mem
  • 用于左包装字节元素的高效 sse shuffle mask 生成

    使用 sse 优化以下代码的有效方法是什么 uint16 t change1 uint8 t pSrc uint8 t pDest if change1 0x0001 pDest pSrc 0 if change1 0x0002 pDest
  • 如何从保存的 XGBoost 模型获取参数

    我正在尝试使用以下参数训练 XGBoost 模型 xgb params objective binary logistic eval metric auc lambda 0 8 alpha 0 4 max depth 10 max delt
  • 闪亮降级fontawesome 5至4

    我正在做一个与 fontawesome 4 7 非常相关的闪亮项目 它给我们带来了巨大的价值 作为 fontawesome 的免费用户 我认为升级到 5 3 1 没有任何优势 许多免费图标变得更加丑陋 粗糙 并且必须付费购买专业版才能获得类
  • Windows 8 上的 Visual Studio 2008/2010 - 问题?

    我正在寻找有关在 Windows 8 x64 上使用 Visual Studio 2008 和 2010 的问题所提供的任何信息 我已经找到了以下内容article http support microsoft com kb 2735834
  • 结合网格/包 Tkinter

    我知道过去关于网格和包有很多问题 但我只是不明白如何将两者结合起来 因为我在两个方向 行 列 扩展我的 表格 时遇到困难 我希望按钮保持相同的大小 但始终位于窗口底部 然而 我希望通过调整窗口大小来自动扩展 表格 但似乎无法使其工作 将 w
  • iOS 中的 Crashlytics 无法继续执行 Fabric 应用程序中的“构建您的项目”

    我正在为我的 iOS 应用程序安装 Crashlytics 我通过他们的网站链接下载了它 并完成了集成框架 添加运行脚本等的所有步骤 我遇到了问题 因此我删除了框架并决定重新开始并尝试全新安装 但是 Fabric 应用程序更新到了较新的版本
  • 解析推送通知:发生另一个错误

    自从昨晚用 Parse 测试以来 我遇到了一个奇怪的问题 我能够很好地发送推送通知 但现在当我通过在线解析推送通知工具发送推送通知时 我的推送通知都没有被发送 Edited好吧 看来这只是本地环境的问题 当我测试推送通知到通过试飞安装的测试
  • 拥有.apk可以提取其源代码。 Android 应用程序安全吗? [复制]

    这个问题在这里已经有答案了 我开发 Android 应用程序 其中一些代码非常私密和机密 我将加密算法放入我的代码中以提高安全性 但最近我读到 当人们拥有 apk 文件时 他们可以 100 正确地提取 java 源代码Source http
  • 为什么我的 Trie 查找比标准 F# Map 的查找慢?

    所以 我只是从 OCaml 移植了 Trie 不幸的是 就 tryFind 而言 它的运行速度比标准 Map 慢 我不明白这一点 特里树似乎应该更快 F 的代码库是否以某种特殊方式构建 以使它们比用户通常部署的代码更快 这是代码
  • XSD 指定在 XML 中只能使用一次的属性

    拥有一个具有多个属性的复杂类型
  • C++ 复合模板类工厂

    是否可以制作一个复合模板类工厂而无需手动指定所有组合 我的意思是如果我有这些课程 class CompositeBase template lt typename C1 typename C2 typename C3 gt class Co
  • log4net的线程安全

    似乎有一些关于log4net是否线程安全的讨论 共识是框架是线程安全的 但appender不是 需要正确使用才能实现线程安全 有人可以对此进行一些说明 并可能给出以线程安全方式使用 RollingFileAppender 的示例吗 是否需要