初始化
做一样的初始化,其实是没办法对等的
C#Light的Env 不等于Lua的LuaState
C#Light的执行有完全的执行堆栈,完整的作用域,lua都没有
C#Light有完整的class 函数,继承特征,lua都没有
C#Light可以用VS做编辑器,lua?
为了保持平等对抗,三个测试先做一遍,再依次执行
测试1 ,简单的一次创建给个名字并销毁,测试300次
测试2,调用Debug.Log打印,执行300次
测试3,一次性在脚本里多调用一些方法,创建10个物体再销毁
测试一结果:
这项的测试时间uLua是原生的4.5倍,C#Light是原生的4.5倍,多次测试有时uLua快一点,有时C#Light快一点
测试2结果:
这项测试,C#Light几乎总比uLua快15%左右
测试三结果:
这项测试,uLua比C#快20%左右
测试的结果就是这样,有胜有负。还不足以全面衡量性能,有个大概概念吧。
而且性能并不是最重要的。
以原生为X1,和其他问题一起列了一张表
项目 | uLua | C#Light |
性能测试一 | X4.5 | X4.5 |
性能测试二 | X4.3 | X3.63(快15%) |
性能测试三 | X6.87(快20%) | X9.01 |
平台兼容性 | Android IOS PC Mac | Unity全平台包括WebPlayer 非Unity支持微软全系列 Xamarin全系列 |
编辑器 | lua专用编辑器或文本编辑器 | VS MonoDevelop等C#编译器可兼容 |
注册类型 | 字符串注册 | 接口注册 |
调用方式 | lua特色dostring,函数也要dostring调用,面向对象用table模拟 | 可以dostring 完全面向对象 可以直接调用脚本的类型,可以new 可以static访问 |
语法 | lua | C# |
C#Light 和 uLua的对比第一弹,布布扣,bubuko.com
时间: 2024-10-29 19:12:19