(1)Single 代表所产生的In-Process COM程序是一个单一线程的程序,一次只能接收一个client发出来的request,由于是循环的操作,所以不会有多任务同时进行的问题,你的COM程序不需要编写多任 务处理的部分. (2)Apartment 代表每一个Remote Data Module所产生的instance一次只能处理一个前台发出的request,可是如果同时创建多个In-Process COM程序,那么每个COM程序都会有一个线程来处理,每个 instance所处理的数据是安全的,可是你必须防止一些共享变量的冲突. (3)Free 该线程模式可以让Remote Data Module产生的每个instance通过各自的线程处理每个前台发出的request,所以Remote Data Moudle本身必须采用多线程的程序写法,你必须保护每个instance所处理的数据区域不会互相冲突..当使用ADO数据集时,推荐使用Free模型. (4)Both 与Free相同,除了所有对应前台界面的callback是连续的以外. (5)Neutral 此种模式允许多个前台程序在同一个时间以不同的线程来调用Remote Data Module,不过COM对象必须确保不会有前台程序调用的冲突,你要确定每个线程在访问全局变量及实例数据时,不 会发生任何冲突.这个模式只适用在COM+.
2005-11-8 12:04:00
|
请发表评论