locking

    2熱度

    1回答

    問題:在現代數據庫系統中長時間保持記錄的常見做法? 我的理解是在數據庫中鎖定記錄(樂觀或悲觀)通常是在交易過程中很短的時間。 我現在有工作的軟件一直鎖在記錄很長一段時間: 鎖保持在登錄的用戶(在ACTIVE_USERS」表)的記錄用戶登錄軟件的全部時間。 假設用戶A正在處理文件。與該文件相對應的記錄被鎖定,直到USER A保存文件或退出文件。因此,如果一個同事USER B試圖在同一個文件上工作,會

    1熱度

    1回答

    我想在SQLServer上設置JPA樂觀鎖定。爲此,我使用TIMESTAMP列(SQLServer TIMESTAMP是遞增的數字,不保留日期或時間)。 正在自動遞增的數字,在我的Java實體需要設置插入/更新到false否則我會得到一個異常: com.microsoft.sqlserver.jdbc.SQLServerException:無法更新時間戳列 這裏是我的Java實體映射: @Vers

    0熱度

    1回答

    所以我有一個websocket來監聽消息,當它接收到所需的消息時,它會調用run()函數。因爲run()運行需要一段時間才能完成,並且在此期間可能會有多條消息,所以我想鎖定此函數,以便在任何時候只運行一次。如果在此期間收到消息,我只是想忽略它。但是,我沒有得到鎖機制正常工作。 def __init__(self): self.lock = threading.Lock() def p

    0熱度

    1回答

    我想爲我的地圖使用Quorum進行地圖鎖定操作:myMap。 我使用法定配置的編程配置。 QuorumConfig quorumConfig = new QuorumConfig(); quorumConfig.setName("xxx"); quorumConfig.setEnabled(true); quorumConfig.setQuorumFunct

    0熱度

    1回答

    我需要一些幫助來升級我的VBA代碼。 我嘗試查找將根據當前日期解鎖特定行的代碼。問題是,我不希望所有行的單元格都被解鎖,但只有一組特定的範圍。與在「B」列中的當前日期一樣,解鎖的單元格將從(「D」到「K」); (「M」到「P」); (「R」到「S」)和(「U」到「V」)。 中間的單元格包含我不希望人們亂搞或錯誤更改的公式。 Private Sub Worksheet_SelectionChange

    0熱度

    1回答

    我在我的應用程序中有一個場景,在事務下的簡單INSERT語句阻止了MySQL中不同行上的DELETE語句,並且最終DELETE語句會話超時並出現鎖定超時錯誤。 我試圖在下面的簡單場景中解釋情況。請注意,在列上添加索引會有所幫助,但是,如果我在DELETE的WHERE子句中有2列,我仍然會看到鎖定等待超時。另請注意,在我開始交易之後,我需要做其他幾個處理,因此交易只需要幾分鐘即可提交或回滾。很難相信

    1熱度

    1回答

    我正在嘗試JPA支持數據庫鎖定以避免記錄中的併發請求。在我的情況下,我需要使用pesssimistic鎖。我得到了使用以下方法: EntityManager em; ... Map<String,Object> props = new HashMap<String,Object>(); props.put("javax.persistence.lock.timeout", 0); em.

    0熱度

    1回答

    我看到很多討論關於網站中的靜態鎖定寫入單個文件進行日誌記錄。 有些人說永遠不要使用靜態鎖,而其他人則說這是在這種情況下明確要求的。反對者認爲:如果IIS應用程序池被回收呢?然後,靜態鎖將丟失,並可能發生文件寫入錯誤。我的具體問題是:如果你的用戶數量相當小(n < 1000),並且你的鎖裏面有一行代碼,執行寫入<的500個字符的文件,這是一個天文上不太可能的問題與哪些有關? 如果是任何大小的問題,那

    0熱度

    1回答

    我寫了一些關於boost共享互斥鎖的測試代碼。我剛剛發現有時boost :: shard_lock可能無法創建。 我在這裏誤解了嗎?或者如何獲取日誌/異常? const int thnum = 1000; const int times = 10000; long total = 0; boost::shared_mutex shared_mutex_lock; void shared

    0熱度

    1回答

    我需要一些幫助來理解Linux的`try_cmpxchg語義和實現。 #define __raw_try_cmpxchg(_ptr, _pold, _new, size, lock) \ ({ \ bool success; \ __typeof__(_ptr) _old = (_pold); \ _