首页   注册   登录
 awanganddong 最近的时间轴更新

awanganddong

V2EX 第 378283 号会员,加入于 2019-01-18 07:28:09 +08:00
awanganddong 最近回复了
2 天前
回复了 yanluya 创建的主题 生活 为什么这么多年轻人不想结婚?
3 天前
回复了 MiracleGoogle 创建的主题 程序员 天天被上司 diss
公司拖欠 2 个月工资,领导们也没任何回应。准备偷偷找工作了。
swoole 在我的认知中,属于给 phper 开的天窗。
通过 swoole 可以去了解多进程,多线程,常驻内存等计算机系统的一些概念。

就像楼上说的,简单情况可以用 workman。复杂情况可以用 go。
这两者之间存在个过渡点,那就用 swoole 了。


讲个道理,线上 swoole 出现问题了,那就只能找会 C 的大牛了。
从成本来说。不如 go 来的平滑。


还有 swoole 的文档想让人死
php 和 c 实现是大致一样,只不过 c 指针不可控。从 php 入手可以浅入深出(重要的是我学的就是 php 啊)。
毕竟牵扯到底层函数 php 都是移植 c 的。
@haiyang416

整个流程明白了
接下来我还要理解下 socket_select 更近一些


谢谢大家了
@haiyang416 你能帮我解释下下边这个情况吗。

就是 telnet 初次连接的时候,打印 socket_select 下$readFds 里边为服务器的 fd 与客户端 fd,
然后 telnet 发送消息,就只剩下客服端的 fd。


socket_select 处理第一次连接和发送消息有什么不同呢。不理解
但是现在又出现让我困惑的问题
telnet 连接后,发送消息,代码是从那个位置开始走的。
按照实际是从 socket_select 这里开始走的
就是 @haiyang416 说的问题

我大概想了下

其实是分两种情况的

1.客户端首次连接,然后执行代码块( in_array($fd,$readFds))
2.客户端再次连接,然后执行代码块( count($readFds) > 0 )
@haiyang416

你的意思是说,我将套接字放入$readFds 数组中,这时候会执行 count($readFds)>0 里边的逻辑( A ),这时候对进程来说是阻塞的,同时如果有新的连接进入,就必须等 A 处理结束,才可以进行。?
专门为了研究 socket 写的 demo。不是为了用在线上的。
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2194 人在线   最高记录 5043   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 14ms · UTC 05:45 · PVG 13:45 · LAX 22:45 · JFK 01:45
♥ Do have faith in what you're doing.