导航

2006年9月15日

摘要: ManualResetEvent使用演示 ManualResetEvent 允许线程通过发信号互相通信。通常,此通信涉及一个线程在其他线程进行之前必须完成的任务。当一个线程开始一个活动(此活动必须完成后,其他线程才能开始)时,它调用 Reset 以将 ManualResetEvent 置于非终止状态。此线程可被视为控制 ManualResetEvent。调用 ManualResetEvent 上的... 阅读全文

posted @ 2006-09-15 14:37 hcfalan 阅读(3241) 评论(0) 推荐(0) 编辑

摘要: 同步方法 多线程开发的时候,开发者经常会遇到在一个方法里锁定和释放一个对象的情景,本文演示了如何使用MethodImpl属性标识一个需要同步的方法,让编译器自动产生同步代码。 using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Threadi... 阅读全文

posted @ 2006-09-15 10:04 hcfalan 阅读(5042) 评论(1) 推荐(2) 编辑

摘要: 基于角色的代码权限 演示了.NET中基于角色的安全控制,并且演示了安全控制中,对应用程序域的初始化步骤。 using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Windows.Forms;public class WindowsForm : System... 阅读全文

posted @ 2006-09-15 09:25 hcfalan 阅读(410) 评论(0) 推荐(0) 编辑

摘要: 实现ISynchronizeInvoke 当运行于线程T1的客户端调用一个对象的方法的时候,该对象的方法是在客户端线程上执行的。然而,如果该对象的方法要求始终在一个指定线程T2上执行,该怎么实现呢?这是要求多个线程配合使用的常见情形。例如,.NET Windows窗体和控件要求必须在创建它们的那个线程里处理消息。为了处理这样的情况,.NET提供了ISynchronizeInvoke... 阅读全文

posted @ 2006-09-15 08:55 hcfalan 阅读(2418) 评论(6) 推荐(1) 编辑