|
Правильный Dispose
|
|||
---|---|---|---|
#18+
Есть класс. Ну например такой Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 14:25 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
Алексей К, 3 - а если вообще не реализовывать Idispose? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 14:34 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
netivanАлексей К, 3 - а если вообще не реализовывать Idispose? :) А как освобождаться от неуправляемых ресурсов? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 14:35 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_system, а тут не слово про "неуправляемые". гляньте http://msdn.microsoft.com/en-us/library/b1yfkh5e%28v=vs.100%29.aspx ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 14:46 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
И еще вопрос, а если этот list у меня еще где то используется и я не хочу его диспозить? то вызвать Код: c# 1.
or Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 14:46 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
netivanvirus_system, а тут не слово про "неуправляемые". гляньте http://msdn.microsoft.com/en-us/library/b1yfkh5e%28v=vs.100%29.aspx ну слово то хотя бы есть.... "Реализация методов Finalize и Dispose для очистки неуправляемых ресурсов" ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 14:57 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_systemArm79virus_system, SmtpClient, проблема, вскипает мозк, помогите плиз не понял? А чего непонятного? Берете свой класс и наследуете от DisposableTemplate Переопределяете в наследнике методы DisposeManagedResources(); DisposeUnmanagedResources();, в которых и осуществляете чистку соответственно управляемых и неуправляемых ресурсов virus_systemИ еще вопрос, а если этот list у меня еще где то используется и я не хочу его диспозить? Не надо список делать разделяемым, если это возможно. list.ForEach(i => i.Dispose()); list.Clear(); ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 14:58 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
Arm79Не надо список делать разделяемым Т.е. разделяемым??? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:02 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_systemесли этот list у меня еще где то используется ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:04 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
Arm79virus_systemпропущено... не понял? А чего непонятного? Берете свой класс и наследуете от DisposableTemplate Переопределяете в наследнике методы DisposeManagedResources(); DisposeUnmanagedResources();, в которых и осуществляете чистку соответственно управляемых и неуправляемых ресурсов Это я реализовал. Вопрос то про списки. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:04 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_systemЭто я реализовал. Вопрос то про списки. Что за вопрос то? Вы четко скажите, что есть, и что хотите. А то ваши вопросы, оторванные от общего контекста, никак не приводят к пониманию. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:10 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
Arm79, я так понял вопрос в том, нужно ли вызывать Dispose() для каждого элемента списка? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:11 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
netivanArm79, я так понял вопрос в том, нужно ли вызывать Dispose() для каждого элемента списка? Да. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:13 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_systemnetivanArm79, я так понял вопрос в том, нужно ли вызывать Dispose() для каждого элемента списка? Да. Если элемент списка поддерживает диспозе, то не просто нужно, а необходимо. list.ForEach(i => i.Dispose()); list.Clear(); вместо while (list.Count() > 0) { list[0].Dispose(); list.remove(0); } ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:15 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_systemnetivanАлексей К, 3 - а если вообще не реализовывать Idispose? :) А как освобождаться от неуправляемых ресурсов?Их лучше по возможности не делать членами классов. Создавать и освобождать через using внутри методов. Делать членом класса только в крайнем случае. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:24 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
Arm79, а если у меня список разделяемыый. Ну например что то вроде дерева... Есть общий список, а в каждом есть еще ссылки на чилдрены. то у объекта просто вызвать childList.clear()??? (с условием то что общий список все заспизит.) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:24 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_systemArm79, а если у меня список разделяемыый. Ну например что то вроде дерева... Есть общий список, а в каждом есть еще ссылки на чилдрены. то у объекта просто вызвать childList.clear()??? (с условием то что общий список все заспизит.) Мой подход заключается в том, что ответственность за Dispose() возлагается на того, что этот объект создал. Если какой-то класс создал список, заполнил его элементами, и передал его части на обработку в другие классы, то и уничтожать объекты этого списка должен он сам ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:28 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
Arm79Если элемент списка поддерживает диспозе, то не просто нужно, а необходимо. На самом деле... Все очень зависит от места отрастания рук у писавшего классы реализующие элементы этого списка... да и сам класс его (этот список) использующий... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:30 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_system, а что у вас за такие неуправляемые ресурсы если не секрет ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:31 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
netivanvirus_system, а что у вас за такие неуправляемые ресурсы если не секрет неуправляемых то у меня и нет. Просто хочется разобраться в этом вопросе... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:37 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
buser, Arm79 Щас просто пример... без всякого контекста... Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:42 |
|
Правильный Dispose
|
|||
---|---|---|---|
#18+
virus_system, если без контекста, то я не знаю. общий смысл вроде правильный, но точно сказать нельзя. Вопрос: зачем экземпляру класса MyObject нужно некое подмножество исходного списка с другими экземплярами того же типа? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2013, 15:56 |
|
|
start [/forum/topic.php?fid=20&msg=38160774&tid=1405129]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
others: | 346ms |
total: | 514ms |
0 / 0 |