Friend过程快于Public过程

Friend过程快于Public过程,第1张

Friend过程快于Public过程,第2张

' Public Sub PublicSub(ByVal值为Long)'

末端接头

公共函数public Function(ByVal value As Long)As Long '

结束功能

' Friend Sub FriendSub(ByVal值为Long)'

末端接头

友元函数FriendFunction(ByVal值为Long)为Long '

结束功能

然后,在表单模块中创建一个循环,并多次执行每个例程。例如,要查看Pentium II机器上执行时间的差异,您可以调用每个例程1,000,000次。以下是测试结果:

在私有模块中,重复调用公共Sub或函数100万次需要0.46秒,而调用相同内容的朋友模块只需要0.05秒和0.06秒。前后相差8-9倍!多用途类型的公共类模块也是如此。

对于这种不可思议的结果,可能的解释是:友元型进程不处理组装和反汇编代码的消耗(公共进程可以从当前项目外部调用,所以COM要来回组装数据)。

但在大多数情况下,这些时间差并不明显,尤其是当程序包含一些复杂耗时的语句时。

即便如此,友元进程相对于公共进程还有其他优势,比如能够接受和返回BAS模块中定义的UDT变量。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » Friend过程快于Public过程

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情