VB开发的dll在C#中是可以调用的,这个大家都知道。
我有个想法不知道可不可行?求大神指点。
能不能使用C#做一个多线程的壳,来调用VB开发的dll中的方法,来实现多线程?背景:有一个之前用VB写的系统,现在想做些优化(想实现多线程),又不想全部重新开发。
所以想能不能结合C#来实现。

解决方案 »

  1.   

    VB本身是单线程的,你dll在多线程运行,
    最后结果还是要给这个单线程的程序来调用,
    所以意义不大,只不过可以分担一些工作量,
    做出来的dll只能是针对很具体的工作的程序,
    这时候与其用VB,还不如你C#把工作全包了去算了。
      

  2.   

    我觉得是没必要,
    各种VB多线程,都是牺牲效率或者稳定性换来的。
    与其这样用VB还不如不用VB算了。
    用VB做程序的好处是,小巧,开发速度快。
    既然C#能做,我觉得干脆就C#做掉算了,没必要两个程序导来导去。
    VB的好处就是不用去考虑运行库的问题了,直接就跑了,但是C#有运行库啊,
    这时候再用VB插一腿就很没意思了。
      

  3.   

    如果直接多线程调用VB6写的dll的话,应该不是很稳定,有可能崩溃,所以...
    建议用C#重新写一遍,这样用多线程应该没问题.