public:it:com

com

  • win桌面程序, 窗口嵌入IE控件, 必须使用STA才能让窗口有效控制控件. 关于STA与MTA, 有个形象的描述:
    • 进程相当于一个小城镇,
    • 线程相当于这个城镇里的居民,
    • STA(单线程套间)相当于居民房,是私有的,
    • MTA(多线程套间)相当于旅馆,是公用的,
    • Com对象相当于居民房或旅馆里的物品.
    • 接下去就好理解了,一个小城镇(进程)里可以有很多很多的(居民)线程,
    • 这个城镇(进程)只有一间旅馆(MTA),但可以有很多很多的居民房(STA).
    • 只有居民(线程)进入了房间(居民房或旅馆,STA或MTA)以后才能使用该房间里的物品(COM对象),
    • 居民房(STA)里的物品(COM对象)只能供这间房子的主人(创建该STA的线程)使用,其它居民(线程)不能访问.
    • 同样,只有入住到旅馆(MTA)里的居民(线程,可以有多个)才可以访问到旅馆(MTA)里的物品(com对象),
    • 但因为是公用的,所以要合理的分配(同步)才能不会产生混乱.
  • public/it/com.txt
  • 最后更改: 2020/11/20 12:36
  • oakfire