推a
°套间不等于线程,它只是一个逻辑概念,实现为一个结构体
°环境不等于线程,它只是一个逻辑概念,实现为一个结构体,可以理解为对象的配置
-
°同一进程可以有多个STA,但是只能有一个MTA和一个NTA
°同一套间,无论是何种套间,均可包含一个或多个环境
°同一环境可以包含一个或多个对象
°同一环境只能存在于一个套间当中
°同一COM对象只能存在于一个环境当中
-
°一个MTA可以与多个线程绑定
°一个STA只能与一个线程绑定
°一个NTA不与任何线程绑定,里面只包含了COM对象
-
°同一进程中所有支持MTA线程模式的COM对象均放在同一个MTA中
°同一进程中所有支持NTA线程模式的COM对象均放在同一个NTA中
-
°任何跨越环境的对象间相互调用,都需要列集/散列
°任何跨越了套间、进程、主机的对象间相互调用,都需要列集/散列
-
°同一套间,仅仅跨越环境的对象间相互调用使用无需线程切换的轻量级代理
°同一进程,跨越了套间的对象间相互调用使用需要进行线程切换的xxx代理(待查)
°同一主机,跨越了进程的对象间相互调用使用LRPC代理
°跨越了主机的对象间相互调用使用RPC代理
-
°LRPC和RPC通称ORPC(面向对象的远程过程调用协议)