C#-Monitor-多线程 不阻塞线程 无法执行时 放弃
2023-09-11 14:21:57 时间
public void TestMethod1() {
object _lock = new object();
Action a1 = () => {
if ( Monitor.TryEnter( _lock ) ) {
try {
for ( int i = 0; i < 10; i++ ) {
Debug.Print( "a1\t" + i );
}
} catch ( Exception ex ) {
Debug.Print( " a1 occur error : " + ex.Message );
} finally {
Monitor.Exit( _lock );
}
}
};
Action a2 = () => {
if ( Monitor.TryEnter( _lock ) ) {
try {
for ( int i = 0; i < 10; i++ ) {
Debug.Print( "a2\t" + i );
}
} catch ( Exception ex ) {
Debug.Print( "a2 occur error : " + ex.Message );
} finally {
Monitor.Exit( _lock );
}
}
};
Parallel.Invoke( a1, a2 );
}
相关文章
- C# 多线程多文件批量下载---子线程中更新UI 实例
- C#实战技能之WebApi+Task+WebSocket
- C#设计模式——观察者模式(Observer Pattern)1
- [通信] C#多线程Socket-文件传输
- C#编程总结(四)多线程应用
- C# 视频监控系列(13):H264播放器——控制播放和截图
- 重学c#系列——c#运行原理(二)
- C#中Encoding.Unicode与Encoding.UTF8的区别
- C# 快速排序
- C# datatable中重复数据去重
- C# 多线程参数传递
- C# - 多线程 之 进程与线程
- C# Winform WCF 调试服务端的程序(三种方法)
- C# 堆排序
- C# SQLite数据库 访问封装类
- C# WinForm多线程开发(二) ThreadPool 与 Timer
- Atitit. c# 语法新特性 c#2.0 3.0 4.0 4.5 5.0 6.0 attilax总结 1. 版本历史1 1.1. C# 1.0-纯粹的面向对象2 1.2. C# 2.0
- 程序老鸟C#学习:3天学会全部基础--第二天
- C#浮点数问题
- C#多线程详解
- 深入理解C#中常见的委托【详细】
- C#多线程实践-锁和线程安全
- C# 连接 Sqlserver2005 Analysis Service的总结
- C# 多线程与线程扫描器