我已經瀏覽了所有用於java子串方法的內存泄漏解決方案。由於這個問題,我仍然得到了內存不足的錯誤。我有一個長度爲1000-3500的字符串數組列表。我索引它們並存儲它們。問題是每個字符串都需要通過循環運行來存儲所有可能的不同長度的相同字符串。爲此,我使用循環和子串方法。並且此方法導致內存泄漏問題。關於使用java子串方法的內存泄漏問題
的什麼我已經做了須藤代碼:
for(int i=0;i<str.length;i++)
{
//create substring and index it
str.substring(0,(str.length()-i));
}
STR:字符串。並且這個循環運行直到數組列表中的所有字符串都被索引。我試圖修復被泄漏,
1.
for(int i=0;i<str.length;i++)
{
//create substring and index it
new String(str.substring(0,(str.length()-i)));
}
2.
for(int i=0;i<str.length;i++)
{
//create substring and index it
new String(str.substring(0,(str.length()-i)).intern());
}
3.
for(int i=0;i<str.length;i++)
{
//create substring and index it
new String(str.substring(0,(str.length()-i))).intern();
}
我仍然有問題。我的java版本是:1.7.0_17。
編輯:
我知道這不是從評論的內存泄漏問題。我正在索引一些連續的字符串。比方說,
String s= abcdefghijkl;
我想索引的每個字符串:
abcdefghjk
abcdefghj
abcdefhg
abcdefh
abcdef
abcde
abcd
..
..
a
要執行此,我得到一個字符串,然後進行串操作,獲取該字符串,並對其進行索引。
你是怎麼發現有泄漏? – UmNyobe
是的,你確定它是一個泄漏,而不僅僅是大量的內存使用嗎?你有沒有嘗試增加你的堆大小?請同時發佈證明泄漏的[SSCCE](http://www.sscce.org)。 –
你爲什麼要這麼做呢?這看起來像一個XY問題。謹慎地告訴你想要達到的目標嗎? – fge