为什么说C#的效率要比PHP的效率高?

原创
2016-06-17 08:32:19 1878浏览
前提天面试的时候,有个技术告诉我,C#的效率要比PHP的高,C#是多线程的,PHP是单线程,我想问一下C#的多线程是怎么体现的?PHP的单线程是怎么体现的?本人应届毕业生,对于基础的东西,不太感兴趣,现在正在恶补...

回复内容:

不管是开发效率还是运行效率,动态类型的先天弱势是无法弥补的。
当然如果你仅仅需要hello world... 面试的也是个棒槌…运行效率上说带JIT的编译型语言自然好过动态语言。 谢邀,谢抬爱。
以上。

追加一句:
C#和PHP使用场景的不一样,怎么比?比什么比??
你这个渣渣扎古还敢跟我的高达比? “C#的效率要比PHP的高” 这么不严谨的技术人员,还是不要去了,对于你以后的学习和成长绝对是个阻碍。

其实深刻一点的理解,你就会发现,其实C#和PHP根本不能做对比,因为不是同一个物种。不能因为大家都能吃喝拉撒就去比较什么。相比PHP的话用基于C# 实现的ASP.NET比较合适。当然如果单独从线程单场方面来比较的话就
PHP没有多线程,是因为你无法在PHP里面去开启一个线程去执行其他任务。所以,多个请求的时候,是交给服务器去处理的。服务器会针对每个用户建立一个php脚本处理进程。所以PHP一般只用在Web开发上面。
C#可以做很多事情,是PHP所无法做到的。C#既可以做Web开发也可以做基于服务器客户端方面的开发。所以多线程处理对C#来说的是多么的重要。你可以写个多线程爬虫软件放在服务器上跑。C#可以做游戏开发,游戏里面大量运用到了多线程处理,等等。再比如C#的web开发,比如用户发起一个不需要返回数据的请求,后台处理又比较耗时,怎么办?开启一个线程,慢慢处理。 1,语言那么多,都是倔强特定问题的。
2,多线程,写得烂,一样效率低。
3,既然在对比php,那项目多半侧重web的。
4,侧重web的,少不了要跟数据库打交道。
5,数据库搞不好,都是翔。
6,时间,开发周期。实战中非常关注的。 “C#效率比PHP高”,是指运行效率高?多线程就比单线程高?那么golang这种纤程是不是又比C#高?node.js这种单线程怎么活?php发展到版本7已经非常快了,可以比下一堆脚本语言,至于C#,更应该和Rust、GO、Swift、Java去比效率 不是单线程多线程问题
是解析型和编译型的问题 带干不干写过大概7年C#,8年PHP。
就语言层面,开发效率PHP更高,因为不用考虑处理类型转换,C#把每种类型都分的很清,相互转换要花很多时间,甚至应用设计模式,PHP基本上学好数组走天下,当然现在也推崇面向对象。

就执行层面,C#使用MSIL作为中间语言,执行时动态编译成native code,PHP使用源代码,执行时动态编译,但是Opcode是可以缓存的。

然后说题主多线程层面,C#虽然内置了多线程的语法糖,但是实际上仍然是需要库(好像是System.Threading)来支持的。当然运行时还是靠Windows系统切换时间片来支持的。PHP默认不提供多线程支持,但是有pThread扩展,同样可以支持多线程。

================================
上面说的都是废话,以下是重点:
“PHP是世界上最好的语言” 他们的效率问题不做评价,但是多线程,单线程跟效率有麻子关系?
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。