Re: [問題] 簡易自製資料庫
※ 引述《Hitmear (屍殌化液)》之銘言:
: 目前設計了一個簡單的資料庫
: 所有的user都透過socket連上迷你server
: 而server主要是處理從user送來的字串
: 並將結果存在一個txt內
: 但是發現多人同時做file access的時候會有先後順序的問題
: 例如: AB同時讀取了文檔,經過各自處理後回傳
: A先回傳後SERVER儲存了,B再回傳
: 結果造成A剛處理過的DATA都被B蓋掉了
: 請問碰到這樣的問題該如何解決?
: P.S.
: 想用GOOGLE,但關鍵字實在不知道該怎麼下.....
推文都有提到重點字眼了, 我綜合一下說:
每當有多執行緒要 access 同一資源的情況, 你就要
思考 synchronization 的問題.
由最基本的 synchronized keyword, 到對你這情況應
該有用的 Readers-Writer Lock (萬一你是多個 process
同時 access 同一file 你還要想 file lock)
不過, 要是你的目的不是要寫一個這樣的簡易 DB, 而只
是想用的話, 我勸你不必重做輪子.
http://www.h2database.com
和 http://www.hsqldb.org
(還有 Derby)
就是既輕便又快的 DBMS.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.155.236.82
推
05/05 16:17, , 1F
05/05 16:17, 1F
討論串 (同標題文章)