Tag: 并发性

并发和multithreadingexcel vba

所以我在网上search和大部分答案我说,Excel中没有并发。 但是有些post说EXCEL 2007提供了multithreading来加速计算。 我真的很困惑,可能吗? 在我的工作簿中,有一些单元格是使用用户定义的函数进行计算的。 这些单元格每秒通过RTD服务器更新一次。 那么这是否意味着这些函数似乎被重新计算并行,但事实上,Excel只是按顺序安排它们呢? 如果电脑有多个内核,它会有所作为吗? 如果实际上这些function是按顺序运行的话,那么下面的两个function是否相同呢? 在性能和速度方面。 1) cell1 = userFunc(1, switch1) cell2 = userFunc(2, switch2) cell3 = userFunc(2, switch3) 和2) cell = func() where func() is public function if(switch1) call userfunc1 if(switch2) call userfunc2 …. end function 让我们假设所有必要的function调整。 我的意思是,第一个会更快吗? 非常感谢!!! 更新:所以如果在VBA中没有真正的并发性,那么这是否意味着函数被顺序调用,并且共享全局variables可以被访问而没有locking问题? 我有一个几乎每个函数都使用的API对象,所以我可以共享它,而不是每次使用它时初始化它? 这个对象只是一个用来调用一些静态函数的API,对象本身没有任何修改或任何东西。