|
|
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
Всем привет! Раньше программил на С++. Там все созданные объекты нужно было освобождать. В java вроде как не надо. Однако возникает вопрос. Может, все-таки объекты освобождать вручную нужно? А то JavaHeapSpaceException уже задолбал. Даю 256 метров памяти, вроде данных не так уж и много... Вобщем, вопрос такой. Нужно ли в java освобождать объекты? Всем спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2006, 23:26 |
|
||
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
Конечно ДА! И в то же время НЕТ! Ненужному объекту надо присвоить null этого достаточно, но об этом нельзя забывать иначе рискуете получить memory leak не хуже чем в C++ Пока есть живые ссылки на объект сборщик мусора не может его убить. Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2006, 23:33 |
|
||
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
2 Kachalov: А если метод завершает работу, означает ли это, что объектам, созданным внутри этого метода, и на которые нет ссылок, нужно тоже делать obj=null;? Или при выходе из метода ссылки на созданные объекты автоматически убиваются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2006, 00:01 |
|
||
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
Vetal2 Kachalov: А если метод завершает работу, означает ли это, что объектам, созданным внутри этого метода, и на которые нет ссылок, нужно тоже делать obj=null;? Или при выходе из метода ссылки на созданные объекты автоматически убиваются? Локальные объекты убиваются. Не надо ничего делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2006, 00:39 |
|
||
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
VetalА если метод завершает работу, означает ли это, что объектам, созданным внутри этого метода, и на которые нет ссылок, нужно тоже делать obj=null;? Или при выходе из метода ссылки на созданные объекты автоматически убиваются? Вообще-то они убиваются не сразу а когда сборщик мусора сочтёт это нужным. Нет гарантии что они немедленно убьются даже в случае вызова сборщика вручную. Хотя это принципиально только при использовании finally() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2006, 05:52 |
|
||
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
LINUXERВообще-то они убиваются не сразу а когда сборщик мусора сочтёт это нужным. Нет гарантии что они немедленно убьются даже в случае вызова сборщика вручную. Хотя это принципиально только при использовании finally() В случае вызова сборщика вручную - убьются, не сомневайся. п.с. вместо finally() читать finalize() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2006, 08:53 |
|
||
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
Не убьются. Вызов gc() - только информирует, а не обязывает! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2006, 10:53 |
|
||
|
Нужно ли в java освобождать объекты?
|
|||
|---|---|---|---|
|
#18+
Кувалдин Роман LINUXERВообще-то они убиваются не сразу а когда сборщик мусора сочтёт это нужным. Нет гарантии что они немедленно убьются даже в случае вызова сборщика вручную. Хотя это принципиально только при использовании finally() В случае вызова сборщика вручную - убьются, не сомневайся. п.с. вместо finally() читать finalize() finalize() pitfalls ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2006, 11:30 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=33957665&tid=2148255]: |
0ms |
get settings: |
8ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
41ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 301ms |

| 0 / 0 |
