提交 c16d95a1 编写于 作者: C codinghuang

Update

上级 59511d23
# 梳理一下架构
首先,我们需要去实现一个协程库,这个协程库是与`PHP`本身无关的。也就是说,我们实现的这个协程库可以用在其他地方,不一定是给`PHP`用的,功能主要是和上下文切换有关。我们把这个协程库放在目录`src/coroutine`里面。
然后,我们需要去实现`PHP`的协程,这个就和协程的一些行为有关了,包括`yield``resume`等等。我们把这些实现放在文件`study_coroutine.cc``study_coroutine.h`里面。
最后,我们需要提供协程的接口给`PHP`脚本来使用。我们把这些实现放在文件`study_coroutine_util.cc`里面。
所以,我们创建以下目录以及文件:
```shell
src/coroutine(目录)
study_coroutine.h(文件)
study_coroutine.cc(文件)
study_coroutine_util.cc(文件)
```
......@@ -155,4 +155,5 @@ RSHUTDOWN
MSHUTDOWN
```
这几个生命周期做什么事情,很多内核分析文章有讲。我们这里只需要大致了解一个流程即可。
\ No newline at end of file
这几个生命周期做什么事情,很多内核分析文章有讲。我们这里只需要大致了解一个流程即可。
......@@ -20,32 +20,26 @@
PHP_MINIT_FUNCTION(study)
{
php_printf("MINIT\n");
return SUCCESS;
}
PHP_MSHUTDOWN_FUNCTION(study)
{
php_printf("MSHUTDOWN\n");
return SUCCESS;
}
PHP_RINIT_FUNCTION(study)
{
php_printf("RINIT\n");
return SUCCESS;
}
PHP_RSHUTDOWN_FUNCTION(study)
{
php_printf("RSHUTDOWN\n");
return SUCCESS;
}
PHP_MINFO_FUNCTION(study)
{
php_printf("MINFO\n");
php_info_print_table_start();
php_info_print_table_header(2, "study support", "enabled");
php_info_print_table_end();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册