全站数据
8 4 2 0 5 8 1

php5 NTS和TS版本的区别,所谓的线程安全和非安全

自考丹丹老师 | 简单学习,快乐成才!         
问题更新日期:2024-10-16 13:14:41

问题描述

php5 NTS和TS版本的区别,所谓的线程安全和非安全,在线求解答
精选答案
最佳答案

先从字面意思上理解:

None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查;

Thread Safe就是线程安全,执行时会进行线程(thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式耗尽系统资源。

再来看PHP的两种执行方式:

ISAPI和FastCGI。

FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP 的二进位档有两种包装方式:msi 、zip ,请下载 zip 套件)。

而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。