search

Home  >  Q&A  >  body text

windows 下选择php版本 是选Non Thread Safe还是Thread Safe?

在开发调试过程中遇到过网页不停的报Stack Overflow 。试过各种方法不行。想到可能是在我目前的环境中不太合适用Thread Safe。请问应该依据什么选ts 还是nts版本。

网上有人说:如果是使用ISAPI的方式来运行PHP就必须用Thread Safe(线程安全)的版本;而用FastCGI模式运行PHP的话就没有必要用线程安全检查了,用None Thread Safe(NTS,非线程安全)的版本能够更好的提高效率。 个人感觉这个很不靠谱 我现在用的ts版本的php,而看到Configure Command:cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--disable-isapi"

求讲解。

巴扎黑巴扎黑2820 days ago438

reply all(3)I'll reply

  • ringa_lee

    ringa_lee2017-04-10 13:11:22

    是的,从php 5.2.1开始分这两个版本,ISAPI需要进行线程安全检查。但是分这两个版本的初衷是要解决某些插件的非线程安全问题,所以我估计你如果没有使用什么特殊的插件的话,出现stack overflow还是程序的问题,你可以把代码贴出来

    reply
    0
  • PHP中文网

    PHP中文网2017-04-10 13:11:22

    我感觉你那Stack Overflow问题是不是mysql造成的?我也有遇到过。后来把mysql活动的时间延长点就好了。
    也有可能因为PHP版本的问题,还有内存溢出等。
    另外你是不是在WIN上开发的?

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 13:11:22

    如果是采用IIS+ISAPI的话,就是使用TS版本。
    如果是采用IIS+FastCGI的话,就使用NTS版本。

    reply
    0
  • Cancelreply