📄 testconcur.cpp
字号:
//-< TESTCONCUR.CPP >------------------------------------------------*--------*// FastDB Version 1.0 (c) 1999 GARRET * ? *// (Main Memory Database Management System) * /\| *// * / \ *// Created: 28-Mar-2002 K.A. Knizhnik * / [] \ *// Last update: 28-Mar-2002 K.A. Knizhnik * GARRET *//-------------------------------------------------------------------*--------*// Concurrency test//-------------------------------------------------------------------*--------*//#include <windows.h>#include <stdio.h>#include "fastdb.h"class Record{public: int4 recId; TYPE_DESCRIPTOR((KEY(recId, INDEXED)));};class Process{public: int4 pid; TYPE_DESCRIPTOR((KEY(pid, INDEXED)));};REGISTER(Record);REGISTER(Process);dbDatabase recordDb, processDb;int main(int argc, char* argv[]){ dbThread readThread, writeThread, insertThread, deleteThread; bool interactive = true; // Open Database Instance 1 if (processDb.open("foobar", "c:/foobar.odb")) { dbQuery q; dbCursor<Process> processes; Process proc; proc.pid = GetCurrentProcessId(); insert(proc); printf("%d active processes\n", processes.select()); processDb.precommit(); } else { printf("Failed to open database\n"); return 1; } // Open Database Instance 2 if (recordDb.open("recorddb", "c:/recorddb.odb")) { dbQuery q; dbCursor<Record> records; Record rec; rec.recId = GetCurrentProcessId(); insert(rec); printf("%d record rows\n", records.select()); recordDb.precommit(); } else { printf("Failed to open database\n"); return 1; } Sleep (10000); processDb.close(); recordDb.close(); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -