仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 533|回复: 8
打印 上一主题 下一主题

[学习教程] PHP网页编程之PHP 多线程扩大(正儿八经的线程)pthr...

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:13:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
理解动态语言的概念,运做机制,熟悉PHP语法情况CentOS6.364bit,php5.4.5pthreads必要线程平安情况,下载php的安装包,解压:tarzxvfphp-5.4.5.tar.gz//名字是否是这个我不断定,本人往下载安装:./configure--enable-zts--prefix=/usr/local/php-ztsmakemakeinstall了局就把线程安装版的php安装到了/usr/local/php-zts,今朝我不懂得开启线程平安究竟会带来甚么影响,以是,就弄两个测试版本。下载和安装pthreads:tarzxvfpthreadscdpthreads-0.0.45//本文的是第一个stable版本/usr/local/php-zts/bin/phpize./configure--with-php-config=/usr/local/php-zts/bin/php-configmakemakeinstall/usr/local/php-zts/bin/php-igrep"php.ini"找出php.ini的地位,修正它把ext=pthreads.so到场进进出来,由于我本来就有php,如今新装的php.ini文件不存在我就考了一个已往……pthreads-0.0.45/examples目次下有些示例文件,比文档有效,在线文档基本不克不及申明成绩,我修正了一个,实行了一下:
  1. <?php/**Sharingsymbols101*@NOTEThread::fetchwasneverincludedinareleaseandwassuperceededbyobjecthandlers*pthreadsallowsreadaccesstothreaddatafromanycontextpthreadsallowswriteaccesstothreaddatafromanycontextcarryonreading...workinprogress...*/classTestObject{public$val;}classFetchingextendsThread{publicfunctionrun(){/**ofcourse...*/$this->sym=10245;$this->arr=array("1","2","3");echo6.chr(10);/**objectsdowork,nopreparationneeded...*read/writeobjectsisntfinalized..*sodothedancetomakeitwork...*/$obj=newTestObject();$obj->val="testval";$this->obj=$obj;echo7.chr(10);/**willalwayswork*/$this->objs=serialize($this->obj);echo8.chr(10);/**nooooooo*/$this->res=fopen("php://stdout","w");echo9.chr(10);/**tellthewaitingprocesswehavecreatedsymbolsandfetchwillsucceed*/$this->synchronized(function(){$this->notify();});echo10.chr(10);/*waitfortheprocesstobefinishedwiththestream*/$this->synchronized(function(){$this->wait();});echo11.chr(10);}}echo0.chr(10);$thread=newFetching();echo1.chr(10);$thread->start();//sleep(1);加了这个就不克不及一般事情,真奇异echo2.chr(10);$thread->synchronized(function($me){echo3.chr(10);$me->wait();echo4.chr(10);},$thread);echo5.chr(10);/**wejustgotnotifiedthattherearesymbolswaiting*/foreach(array("sym","arr","obj","objs","res")as$symbol){printf("$thread->%s:",$symbol);$fetched=$thread->$symbol;if($fetched){switch($symbol){/**manualunserialize*/case"objs":var_dump(unserialize($fetched));break;default:var_dump($fetched);}}printf("
  2. ");}/*notifythethreadsoitcandestroyresource*/$thread->synchronized(function($me){$me->notify();},$thread);?>/usr/local/php-zts/bin/phpFetch.php了局:012367891045$thread->sym:int(10245)$thread->arr:array(3){[0]=>string(1)"1"[1]=>string(1)"2"[2]=>string(1)"3"}$thread->obj:object(TestObject)#2(1){["val"]=>string(7)"testval"}$thread->objs:object(TestObject)#2(1){["val"]=>string(7)"testval"}$thread->res:resource(3)oftype(stream)11
复制代码
大家如果能懂得“熟能生巧”的道理也就明白了这并不是浪费时间,同时这也可以减轻板主的负担,让他们有时间去处理更难的问题。
沙发
发表于 2015-1-19 05:15:34 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
若天明 该用户已被删除
板凳
发表于 2015-1-27 21:57:00 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
不帅 该用户已被删除
地板
发表于 2015-2-5 15:06:36 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
简单生活 该用户已被删除
5#
发表于 2015-2-12 10:49:20 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
乐观 该用户已被删除
6#
发表于 2015-3-3 03:21:25 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
因胸联盟 该用户已被删除
7#
发表于 2015-3-11 09:27:05 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
再见西城 该用户已被删除
8#
发表于 2015-3-18 03:55:03 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
金色的骷髅 该用户已被删除
9#
发表于 2015-3-25 12:36:19 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-20 18:35

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表