簡體   English   中英

多個線程寫入單個數據庫表

[英]Multiple threads writing into single database table

我在使用休眠將多個線程插入數據庫的單個表時遇到問題。 每個線程都會生成一些數據,然后將它們插入表中。 問題是由於數據庫鎖定,插入僅由1個線程處理。 最好的解決方法是什么,以便所有線程都可以同時插入? 我試圖有1個專用線程將寫入表,而其他線程將生成數據。 但是生成數據的速度比插入數據快,因此無法解決我的問題。

我唯一的想法是為每個線程創建自己的數據庫/表,但這對我來說有點奇怪,因為我不知道我會提前創建多少個線程。 有更好的解決方案嗎?

您必須保持隊列以保留要插入的數據。 因此,所有處理線程都可以將數據插入隊列。 一旦您的插入線程將數據插入數據庫,就可以將其從隊列中刪除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM