event模擬資料庫鏈結

2022-03-10 02:47:44 字數 783 閱讀 8777

from threading import thread,event,currentthread

import time

e = event()

def conn_mysql():

count = 1

while e.is_set(): #沒收到訊號執行

if count>3: #超過三次,彈出錯誤

raise connectionabortederror('嘗試鏈結次數太多')

print('\33[45m%s 第%s次嘗試'%(currentthread().getname(),count))

e.wait(timeout=1) #超時1秒鏈結

count+=1 #每次鏈結次數+1

print('\33[45m%s 鏈結到mysql...'%(currentthread().getname())) #收到訊號執行

def check_mysql():

print('\33[43m%s 檢測到mysql...'%(currentthread().getname()))

time.sleep(2)

e.set() #在睡眠2秒後傳送訊號

if __name__ == '__main__':

for i in range(3):

t = thread(target=conn_mysql)

t.start()

t = thread(target=check_mysql)

t.start()

模擬資料庫類

include using namespace std 抽象類,相當與介面 class database 程式設計師使用資料開發 class program 資料庫廠商具體的訪問驅動 class oracle public database void query string sql class d...

MatrixCursor 模擬資料庫

原文 contentprovider對外共享資料的時候的query 方法是需要乙個cursor的,但是如果沒有資料庫,而專案又需要從contentprovider讀取資料的時候怎麼辦?更糟糕的是其他方法操作也都是需要cursor的。此時就需要matrixcursor了。相當有趣,它相當於為你模擬了乙...

typescript 模擬資料庫操作

功能 定義乙個運算元據庫的庫,支援 mysql mongodb mssql 要求 mysql mssql 與 mongodb 功能一樣,都有 add update delete get 方法 注意 約束統一的規範,以及 復用 解決方法 需要約束規範所以要定義介面,需要 復用所以用到泛型 介面 在物件...