java 板


LINE

昨天的程式跑到今天早上又結束了 後來發現是 Thread 會有 java.lang.OutOfMemoryError: Java heap space 我想請問一段程式碼 關於連結 DB public void insertTable(ArrayList<News> news) // News 是要存入資料庫的 Object { String insertSQL = "insert into XX values (XX) "; Connection con = null; PreparedStatement pst = null; try { con = getConnection(); pst = con.prepareStatement(insertSQL); News temp; for(int i = 0; i < news.size() ; i++) { temp = news.get(i); pst.set.... pst.addBatch(); } pst.executeBatch(); } catch(SQLException e) { e.printStackTrace(); } finally { try { pst.close(); con.close(); } catch(SQLException e) { System.out.println("Close Exception :" + e.getMessage()); } } } 大概有20個 Thread 會同時跑這個方法 所以我把 Connection 跟 PrepareStatement 寫在 fuction裡 Connection 取得的方法 getConnection 是我用 proxool 做了一個 Connection Pool 若是 connection 被取完了 就等待x秒 請問我這樣的寫法 會造成有些東西不能 gc 嗎 或是我少關了什麼 還是我需要 clearBatch(); 才能 close PrepareStatement? ※ 引述《icecastleo (酷捏)》之銘言: : 我有一個While迴圈 : 每隔一段時間會開啟 Thread : 接著 Sleep : 但程式有時候會自動結束 : 大概一天 : 主程式並沒有 Throw 任何 Exception : 請問我要怎麼知道 : Java程式自動關閉的原因? --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.167.7.129
1F:推 PsMonkey:請不要用「--」當分隔線 10/29 13:42
2F:推 PsMonkey:其他的... 我想你自己作測試 or 找軟體幫你測試就知道了 10/29 13:43
3F:→ PsMonkey:我會猜你的問題出在 news 超級大,還有 10/29 13:43
4F:推 PsMonkey:下次別再輕易說「沒有錯誤訊息」這種事情了... [嘆氣] 10/29 13:43
5F:→ kanandg1:板友都有超直覺XD (誤 10/29 13:50
抱歉改掉分隔線了 我的 News 只有幾個 private 欄位 跟Get 的 Method 我想我在去找找其他地方好了 所以 Out of Memory 太多次 JVM就會強制關閉我的程式嗎? 我可能沒搞懂 我以為Thread造成的 Exception 有處理的話 主程式還是不會自動結束 所以我說主程式沒有錯誤訊息 > < ※ 編輯: icecastleo 來自: 218.167.7.129 (10/29 14:04)
6F:→ kanandg1:您有處理OutOfMemoryError的話,程式是不應直接結束沒錯 10/29 14:37
7F:→ adrianshum:樓上: 正常來說 OutOfMemoryError 不該也沒法處理 10/29 14:53
8F:→ kanandg1:我比較相信是一般人不會去處理這個^^" 10/29 15:05
9F:→ jej:以前用hibernate作過累似的事情.. 要insert1000萬筆資料... 10/29 20:47
10F:→ jej:分公司的交易.. 一筆一筆作就等著outofmemory.. 兩種作法.... 10/29 20:50
11F:→ jej:交易許可..夜間資源專門執行程式.. 或給db作trigger.... 10/29 20:52
12F:→ jej:交易不許可..就只好用thread.join來硬作..不過不建議.. 10/29 20:54
13F:→ MonyemLi:我覺得問題在你的list清單吧。thread沒結束沒辦法gc阿 10/30 11:39
14F:→ MonyemLi:list小一點,多執行幾次。thread結束再喚起。或是用pool 10/30 11:41
15F:→ icecastleo:噢可能我沒有用 Thread Pool 讓 Thread 重複利用 QQ 10/30 13:18







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP