关于异步事件的一个测试及其分析结果
2004-12-20 09:13
603 查看
因为工作中需要在多线程中使用事件,本来想在事件中抛出一个异常到主程序中,结果可想而知,失败了。于是作了如下的一个测试,看看多线程中的异常处理问题,代码如下:
using System;
using System.Runtime.InteropServices;
using System.Threading;
namespace testAsyncEvent
代码的执行结果如下:
Begin
Thread Started
root: Cycle Print
child(er0): Enter Thread:child
(er0): Enter Thread:child
root: Cycle Print
child(er0): 0
(er0): 0
(er0): 1
child(er0): 1
root: Cycle Print
(er0): 2
child(er0): 2
(er0): 3
child(er0): 3
(er0): 4
child(er0): 4
(er0): 5
child(er0): 5
(er0): 6
child(er0): 6
root: Cycle Print
(er0): 7
child(er0): 7
(er0): 8
child(er0): 8
(er0): Exit Thread:child
child(er0): Exit Thread:child
root: Cycle Print
root: Cycle Print
root: Cycle Print
root: Cycle Print
root: Cycle Print
root: Cycle Print
Ok
Press Enter to Exit ...
从结果分析,发现如果在线程中发生同步事件,则事件的发生源在同一个线程中,如果线程中发生异步事件,则该事件既不在主线程中,也不再子线程中,而是在系统的临时线程中。
但是这里有一个问题,我无法区分线程的真正不同,哪里可以取得线程号阿?谁能告诉我,这样有线程号的区别,这个例子可以更清楚一些。
using System;
using System.Runtime.InteropServices;
using System.Threading;
namespace testAsyncEvent
代码的执行结果如下:
Begin
Thread Started
root: Cycle Print
child(er0): Enter Thread:child
(er0): Enter Thread:child
root: Cycle Print
child(er0): 0
(er0): 0
(er0): 1
child(er0): 1
root: Cycle Print
(er0): 2
child(er0): 2
(er0): 3
child(er0): 3
(er0): 4
child(er0): 4
(er0): 5
child(er0): 5
(er0): 6
child(er0): 6
root: Cycle Print
(er0): 7
child(er0): 7
(er0): 8
child(er0): 8
(er0): Exit Thread:child
child(er0): Exit Thread:child
root: Cycle Print
root: Cycle Print
root: Cycle Print
root: Cycle Print
root: Cycle Print
root: Cycle Print
Ok
Press Enter to Exit ...
从结果分析,发现如果在线程中发生同步事件,则事件的发生源在同一个线程中,如果线程中发生异步事件,则该事件既不在主线程中,也不再子线程中,而是在系统的临时线程中。
但是这里有一个问题,我无法区分线程的真正不同,哪里可以取得线程号阿?谁能告诉我,这样有线程号的区别,这个例子可以更清楚一些。
相关文章推荐
- MongoDB和MySQL性能测试及其结果分析
- 职业测试结果分析 还是很有道理 我的确是一个不太愿意变动的人
- Supersonic关于一个Hash Join的测试代码分析
- MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- 转-MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- [原创]MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- 转载一个关于阻塞/非阻塞以及同步/异步IO的分析
- MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- 一个关于委托、事件、多线程、异步的Demo
- 关于Vmware workstation的NAT结构下的网络测试结果及分析
- MongoDB和MySQL性能测试及其结果分析2010
- LoadRunner:Controller及结果分析 一、性能测试概述 1、关于性能测试目标: ①TPS ②一定并发用户数下功能点的响应时间 ③一定响应时间内功能点的并发用户数 性能测试不是
- MongoDB、HandlerSocket和MySQL性能测试及其结果分析
- 关于ViewPager滑动广告栏所出的问题和布局分析,做一个结果。。。
- 关于HBASE检索特性的测试和结果分析
- MongoDB和MySQL HandlerSocket性能测试及其结果分析
- 关于阻止scroll()事件多次执行的一个小方法