2011年5月31日 星期二

[Windows] 修改 JVM 啟動參數

今天早上為了 H2 執行五六個小時後會出現 out of memory 的問題在頭痛...

上到 Google Group 查了一下,有人建議先把 JVM 的 heap 開大一點試試看....

於是.......問題來了,要怎麼開大??

在 Linux 裡面可以直接透過 Alias 的方式解決.......

那 Windows 呢? 答案就是設定一個名稱為 "_JAVA_OPTIONS" 的環境變數

值的部分就設定為 "-Xms512m -Xmx1024m" 應該是很夠用了....

再來繼續長時間測試 H2 看看.....

2011年5月30日 星期一

2011年5月26日 星期四

[LINQ] 如何直接更改物件集合中的物件值而不建立新物件

用過 LINQ 的人應該會對 LINQ 處理資料集合的功力印象深刻....

但....LINQ 是 Query 阿! 不是 Update!

那如果我只是要針對物件集合中的某幾個物件進行值的變更.......要怎麼作呢....??

答案是 => 只要自己撰寫一個 extension method,method 中回傳原本的物件集合

在網路上找到一個很不錯的參考範例連結:
LINQ: Select an object, but change some properties without creating a new object (Rob Volk's Blog)


以下寫了一個簡單的 sample


但有一點真的需要注意的是,這種方式只能用在物件集合中,若是用在基本型態的資料集合中(例如:整數陣列、整數 List) 則沒有效果......


2011/06/08 Updated: 

今天有找到初始化陣列的方式囉! 只要使用 extension method 就可以簡單達成了....以下為範例: