Memory
Swoole�ṩ��6���ڴ������ģ�飬�ڶ���̱���п���������Աʵ��һЩ���������
- Memory�µ�ģ�����ȫ�������첽�����������У��������κ�IO����
- ����ģ���Ϊ����̰�ȫ�ģ����赣������ͬ������
- Memory���ģ�����Ϊ������Դ�����ɴ�������
Lockʾ����
$lock = new swoole_lock(SWOOLE_MUTEX); echo "[Master]create lock\n"; $lock->lock(); if(pcntl_fork() > 0) { sleep(1); $lock->unlock(); } else { echo "[Child] Wait Lock\n"; $lock->lock(); echo "[Child] Get Lock\n"; $lock->unlock(); exit("[Child] exit\n"); } echo "[Master]release lock\n"; unset($lock); sleep(1); echo "[Master]exit\n";
Bufferʾ����
$buffer = new swoole_buffer; $buffer->append(str_repeat("A", 10)); $buffer->append(str_repeat("B", 20)); $buffer->append(str_repeat("C", 30)); var_dump($buffer); echo $buffer->substr(0, 10, true)."\n"; echo $buffer->substr(0, 20, true)."\n"; echo $buffer->substr(0, 30)."\n"; $buffer->clear(); echo $buffer->substr(0, 10, true)."\n"; var_dump($buffer); sleep(1);
Tableʾ����
$table = new swoole_table(1024); $table->column('name', swoole_table::TYPE_STRING, 64); $table->column('id', swoole_table::TYPE_INT, 4); //1,2,4,8 $table->column('num', swoole_table::TYPE_FLOAT); $table->create(); $table->set('swoole@qq.com', array('id' => 145, 'name' => 'swoole1', 'num' => 3.1415)); $table->set('123456@qq.com', array('id' => 358, 'name' => "swoole2", 'num' => 3.1415)); $table->set('hello@qq.com', array('id' => 189, 'name' => 'swoole3', 'num' => 3.1415)); foreach($table as $value) { var_dump($value); } echo "======================= Total Elements: {$table->count()} ============================\n"; $table->del('123456@qq.com'); // delete a exist element foreach($table as $value) { var_dump($value); } echo "======================= Total Elements: {$table->count()} ============================\n"; $ret = $table->del('a invalid key'); // delete a invalid element var_dump($ret); foreach($table as $value) { var_dump($value); } echo "======================= Total Elements: {$table->count()} ============================\n";