php5 non-thread-safe和thread-safe这两个版本的区别分析
先从字面意思上理解,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。
相关推荐
-
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
一共给了四个版本,VC9 x86 Non Thread Safe.VC9 x86 Thread Safe.VC6 x86 Non Thread Safe.VC6 x86 Thread Safe,这让我这个菜鸟头疼啊,还好 PHP 官网提供下载的地方左边有个英文 choose 我看懂了,我估摸着就是如何来选择版本的意思吧,于是开始查字典及上网查找,终于看明白了具体意思,拿来做个备忘先. 一.如何选择 PHP5.3 的 VC9 版本和 VC6 版本 VC6 版本是使用 Visual Studio 6
-
php5 non-thread-safe和thread-safe这两个版本的区别分析
先从字面意思上理解,None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查:Thread Safe就是线程安全,执行时会进行线程(thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式耗尽系统资源. 再来看PHP的两种执行方式:ISAPI和FastCGI.FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执
-
Java中Runnable和Thread的区别分析
Thread类是在java.lang包中定义的.一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限, 下面看例子: 复制代码 代码如下: package org.thread.demo; class MyThread extends Thread{ private String name; public MyThread(String name) { super(); this.name = name; } publ
-
VSS 软件配置管理 版本控制第1/2页
2.为什么需要配置管理 如果没有软件配置管理,最大的麻烦是工作成果无法回溯.随着工作的进展新的程序覆盖了老的程序,当突然发现新程序有问题而老程序正确时怎么办?那只能重写老的程序来覆盖新的程序.过一段时间又发现原来的老程序有问题,而解决方法在原来的新程序中--您是不是快要发疯了. 为了避免成果被覆盖,包括我自己在内的很多人早期采用手工管理版本的方式,例如当一个新版本产生时用当时的日期来命名文件夹,然后再复制一下以后的修改在复制的文件夹内进行,这样上一个版本就被保存下来了,周而复始不同的版本不会被覆
-
浅析Python中的多进程与多线程的使用
在批评Python的讨论中,常常说起Python多线程是多么的难用.还有人对 global interpreter lock(也被亲切的称为"GIL")指指点点,说它阻碍了Python的多线程程序同时运行.因此,如果你是从其他语言(比如C++或Java)转过来的话,Python线程模块并不会像你想象的那样去运行.必须要说明的是,我们还是可以用Python写出能并发或并行的代码,并且能带来性能的显著提升,只要你能顾及到一些事情.如果你还没看过的话,我建议你看看Eqbal Quran的文章
-
Yii PHP Framework实用入门教程(详细介绍)
说明:因为最近工作工作关系,需要开发一个在Linux下运行的Web Application,需要对现在比较流行的一些PHP框架做一个了解和评估,下面的这篇文章是笔者最近学习一个比较新的PHP Framework的一点经历和操作步骤,因为官方的手册写得比较晦涩(特别是中文的),曾经尝试遍读它那个手册再动手,读了一大半发现仍无法理解,于是干脆先下手为强了,因而也就有了下面的文章. 介绍Yii 是一个基于组件.纯OOP的.用于开发大型 Web 应用的高性能 PHP 框架.它将 Web 编程中的可重用性
-
一文掌握JVM Safe Point
目录 什么是 Safe Point 为啥需要 Safe Point 总结 参考资料 JVM垃圾回收安全点Safe Point GC安全点(Safepoint) 如何在GC发生时,检查所有线程都跑到最近的安全点停顿下来呢? 安全区域(Safe Region) 程序实际执行时: 大家好,我是树哥. 关于 Safe Point 是 JVM 中很关键的一个概念,但我估计有不少同学不是很懂.于是今天跟大家来深入聊聊 Safe Point,希望通过这篇文章能解答这样几个问题: 什么是 Safe Point?
-
Java线程编程中Thread类的基础学习教程
一.线程的状态 在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于后面对Thread类中的方法的理解. 线程从创建到最终的消亡,要经历若干个状态.一般来说,线程包括以下这几个状态:创建(new).就绪(runnable).运行(running).阻塞(blocked).time waiting.waiting.消亡(dead). 当需要新起一个线程来执行某个子任务时,就创建了一个线程.但是线程创建之后,不会立即进入就绪状态,因为线程的运行需要一些条件(比如内
-
java中thread线程start和run的区别
最近看到一个题目,代码如下: 复制代码 代码如下: public static void main(String args[]) {Thread t = new Thread() {public void run() {pong();}}; t.run();System.out.println("ping");}static void pong() {System.out.println("pong");} 问,结果会输出什么? 我运行了很多次,结果都是pong p
-
java 多线程Thread与runnable的区别
java 多线程Thread与runnable的区别 java中实现多线程的方法有两种:继承Thread类和实现runnable接口 1,继承Thread类,重写父类run()方法 public class thread1 extends Thread { public void run() { for (int i = 0; i < 10000; i++) { System.out.println("我是线程"+this.getId()); } } public static
随机推荐
- asp.net(C#) 动态添加非ASP的标准html控件(如添加Script标签)
- JavaScript中对DOM节点的访问、创建、修改、删除
- Tomcat监测脚本的实现示例
- ASP.NET页面某些选项进行提示判断具体实现
- JAVA JSP页面技术之EL表达式整理归纳总结
- Android ListView 和ScroolView 出现onmeasure空指针的解决办法
- javascript排序函数实现数字排序
- javascript动态获取登录时间和在线时长
- Python中encode()方法的使用简介
- JS鼠标3次点击事件实现代码及扩展思路
- 新增加一个防垃圾评论的asp代码,鄙视垃圾
- 深入分析C#异步编程详解
- 探索PowerShell(十五) 引号与转义字符
- 实现javascript的延期执行或者重复执行的两个函数
- 使用javascript做的一个随机点名程序
- C++中构造函数重载
- Windows 2000 FSO权限设置 图文教程第1/3页
- C#实现的Excel文件操作类实例
- Android开发中避免应用无响应的方法(Application Not Responding、ANR)
- c# n个数排序实现代码