【发布时间】:2012-12-17 00:41:22
【问题描述】:
我的应用程序在Wait 方法上花费了太多时间
环境:
- .Net 4.0
- 应用平台 x86
- 控制台应用
- win server 2008 (x64)
我通过 dottrace 检查了性能
Wait 标记为SecuritySafeCriticalAttribute
请注意在 Win7 (x64) 上一切正常。没找到,欢迎提出建议。
任务处理
private readonly BlockingCollection<TTask> _queue = new BlockingCollection<TTask>();
private Thread _workThread;
public void ProcessTask(TTask task)
{
_queue.Add(task);
}
private void ProcessTask()
{
while (_isRun)
{
try
{
TTask task = _queue.Take();
if (task.IsNull())
{
continue;
}
_log.DebugFormat("Sending task: {0}", task);
DoProcessMessage(task);
}
catch (Exception ex)
{
_log.Error(ex);
}
}
}
【问题讨论】:
标签: .net security c#-4.0 code-access-security