⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 table.cc

📁 linux的例子,就是下载后到自己的机子上去运行
💻 CC
字号:
#include"Table.h"#include"system.h"#include"thread.h"Table::Table(int size){    tablesize = size;    number = 0;    table = new void*[size]();    lock = new Lock("table lock");}Table::~Table(){    delete table;    delete lock;}intTable::Alloc(void *object){    int i = -1;    lock->Acquire();    if( number < tablesize )    {  	while ( table[i] != NULL){	   ++i;	   currentThread->Yield();        }	table[i] = object;        ++number;    }    lock->Release();    return i;}void *Table::Get(int index){    void *pointer;    lock->Acquire();    pointer = table[index];    lock->Release();    return pointer;}voidTable::Release(int index){    void * pointer;    lock->Acquire();    if ( number > 0 ){	pointer = table[index];        if( pointer != NULL ) {	    --number;	    table[index] = NULL;	}    }    lock->Release();}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -