作者AJE (小杰)
看板C_Sharp
标题[问题] C#开启多绪 并存取COM元件属性的效能问题
时间Thu Nov 4 19:42:36 2010
我目前开发的C#类别中 有需要存取COM元件
为了加快速度 所以采用多绪的架构
我的类别架构大致如下
class A
{
private COM mMyCOM;
private Thread mMyThread;
private void WorkFunction()
{
// 执行mMyCOM的功能
}
public void Run()
{
mMyThread = new Thread(WorkFunction);
mMyThread.start();
}
}
但是实际测试的结果 反而比不用Thread的单绪环境更花时间 而且多很多
後来知道是.net framework在多绪环境下 会把COM元件序列化来存取
所以很花时间
想请问该如何改善 使存取COM元件所花的时间与单绪环境下的时间是一样的?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.128.231.175
1F:推 goodGG:COM 可以跑多绪吗? 11/05 23:34
2F:→ deuter:你的COM元件是用甚麽写的? VB吗? 11/06 13:27
3F:→ AJE:COM元件是上游厂商提供的 不知道用哪种工具开发 11/06 21:08
4F:→ AJE:在.net里面用COM 可以跑多绪 可是目前测起来很慢 11/06 21:10