Swoole提供了7个内存操作的模块,在多进程编程中可以帮助开发者实现一些特殊的需求。
优点
Memory下的模块可以安全的用于异步非阻塞程序中,不存在任何IO消耗
所有模块均为多进程安全的,无需担心数据同步问题
Memory相关模块对象为有限资源,不可大量创建
table
swoole_table一个基于共享内存和锁实现的超高性能,并发数据结构。用于解决多进程/多线程数据共享和同步加锁问题。
<?php
/**
* Created by PhpStorm.
* User: season
* Date: 18-5-8
* Time: 下午3:11
*/
//创建内存表
$table = new swoole_table(1024);
//内存表增加一行
$table->column('id', $table::TYPE_INT, 4);
$table->column('name', $table::TYPE_STRING, 64);
$table->column('age', $table::TYPE_INT, 3);
$table->create();
$table->set('1', ['id' => 1, 'name' => 'season', 'age' => 30]);
//也可以这样写
$table['2'] = ['id' => 2, 'name' => 'season2', 'age' => 32];
print_r($table->get('1'));
//可以这样读
print_r($table['2']);
//删除
$table->del('1');
运行结果:
内存表