- 博客(8)
- 收藏
- 关注
转载 无处不在的斐波那契数列
mark一下斐波那契:https://www.zhihu.com/question/28062458并顺便学习了下快速幂的实现原理,感觉大学时间好多知识点还给老师了,太浪费青春了快速幂:https://blog.youkuaiyun.com/java_c_android/article/details/55802041简单总结:神奇的数学+快速幂解决次幂过大无法计算的问题并且刚好与编程行业有着非常紧密的联系(...
2018-05-16 19:53:25
315
翻译 php内核G宏
EG()、这个宏可以用来访问符号表,函数,资源信息和常量 excuteCG() 用来访问核心全局变量 compilePG() PHP全局变量。我们知道php.ini会映射一个或者多个PHP全局结构。举几个使用这个宏的例子:PG(register_globals), PG(safe_mode), PG(memory_limit)FG() 文件全局变量。大多数文件I/O或相关的全局变量的数据流都塞...
2018-05-04 21:14:27
459
转载 php5中最重要的两个结构zval和hashtable的一点总结
php 支持8种基本的数据类型: 四种标量类型: boolean (布尔型) integer (整型) float (浮点型, 也称作 double) string (字符串) 两种复合类型: array (数组) object (对象) 最后是两种特殊类型: resource (资源) NULL (NULL)无论何种...
2018-05-04 20:24:20
600
转载 php中tsrm理解
#ifdef ZTS直接使用全局变量#elsezend会使用一个global_id 为每个线程的全局变量创建一个副本获取时会根据id-1为索引去get 类似数组的取值 ext_skel会帮我们生成好下面的宏:#ifdef ZTS # define MYEXTENSION_G(v) \ (((zend_myextension_globals*)(...
2018-05-03 22:03:05
433
转载 php yield简单实例
php5.5新支持yield协程的实现并未有特殊的新东西,是在现有的系统层面上利用epoll实现多任务协作完成的php也与时俱进实现了相关的功能yield 实现逐行读文件并使用很少内存实例(记得是会固定申请部分内存给yield使用):<?phpfunction getLines($path){ $f = fopen($path,'r'); while(!feof($f))...
2018-03-15 22:41:58
806
翻译 读php源码strtr
跟随大神脚步读一读php源码http://www.phppan.com/2010/01/php-strtr-reason/文章只解释了from to的原理从源码中了解strtr arr替换时候会先从key较长的键值替换 php_strtr_array方法最关键的一个参数maxlen 为了最大程度节省内存,emlloc出最大的key。emlloc(maxlen+1)然后循环源字符串当前pos+len...
2018-03-01 23:00:25
243
原创 http长连接问题
因公司业务需求想尝试使用go连接第三方公司的http api现有业务访问api全是大量短连接 大量临时端口访问第三方的80端口同时导致服务器上大量TIME_WAITE状态的进程但是线下调试后发现并没什么卵用。。必须sleep后 下一个线程才能复用前面的conn连接原因:复用http conn 必须等待上一个请求完全结束response后,下一个线程才能复用。结论:h
2018-01-25 17:08:50
704
翻译 apue11.6线程同步例程
mark一下读apue里使用的哈希先理解哈希算法的原理,再看apue的代码,完全就是用c实现了一遍hash嘛 index = value % 16 只是把16换成了29apue源码:http://blog.youkuaiyun.com/u013616945/article/details/73733257哈希讲解:http://blog.youkuaiyun.com/duan19920101/article/detail...
2018-01-22 23:02:29
218
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人