Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
МСУ, Вернее применим как правило, в патерне IDisposable, остальное это как бы эквилибристика хака и к промышленному коду отношение иметь не должно, говорить что тут реализован паттерн IDisposable не приходится , ибо его тут нет и в помине ( есть только знакомый интерфейс IDisposable) а вот тут мне кажется очень тонкое место Log.DebugException(ex.Message, ex) мы ошибку заносим в очередь на запись, удалится ли this из памяти вот вопрос... или перейдет в долгоживущие? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2013, 21:09 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
Где-то в степи, у него сама идея с временными файлами утопична. Никто и не сомневался в способностях топикстартера - выдумать полуработающий велосипед и не замечать бревен в ресницах. Почему бы не хранить это темповое изображение в БД (varbinary / filestream). Никакого оверхеда в файловой системе - все операции на лету. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2013, 21:35 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
МСУ, Ну почему утопична, она ведь работает, про базу данных разумно, ибо у хостеров размер баз как правило не ограничен, не в пример дисковой квоте, я уже одного поймал на этом.. Все дело когда... и как... то что не оптимально ( ну с нашей точки зрения , да бог с ним), вот при детальном рассмотрении реализации диспозе ( я то думал там есть такая) а там нет ничего, вот это и настораживает. Ведь по существу весь патерн замыкается на удаление неуправляемых ресурсов при помощи синтаксического сахара using ну и сам финализатор, там же ясно сказано "Метод Finalize используется для операций очистки неуправляемых ресурсов, хранимых в текущем объекте до его удаления" там нет слова как правило.. там по существу вся конструкция держится за счет using - поставил программист его - выполнился метод Dispose(), по наитию, не поставил ( ну забыл) выполнился метод через вызов финализатора( когда то может быть),( защита от разгильдяйства) при using так же выполняется деректива к уборщику GC.SuppressFinalize, и он помечает объект, что при удалении его - финализатор вызывать не надо, это ж ему легче, это ж не хилая операция прибраться в памяти.., а тут получается что и диспозе не нужен, обыкновенную функцию влепи чистить папку и все, а финализатор что так вызовется что так.. ну и про запись в лог, терзают смутные сомнения.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2013, 22:04 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2013, 22:15 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVostta_titeev, ? попробовай юзер-профиль использовать для этого. грузи сразу в базу. файлы то зачем? я так в свое время делал. нормально вышло. плюс еще даже - несклько разных может быть иображений. с каждым отдельно можно работать. также как и с корзиной, кстати, по примеру... а дальше зависит от того как используется аутентификация. если все анонимы, то можно и чистить, как заведено, либо мож даже оставлять, сохранив последнюю модификацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2013, 22:16 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
Где-то в степи Как применять IDisposable и финализаторы: 3 простых правила О чем я и говорил, финализатор зло, тема баян - холиварили лет 5 назад на форуме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2013, 22:20 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
соленые огурцы — зло! при употреблении с кислым молоком (которое тоже кстати зло еще то), вызывает приступы диареи. про кухонные ножи говорить не приходится, зло! сколько пальцев пострадало в результате их использования, да и уголовщины, связанной с ними тоже не мало. а, ну и финализотры, с сессиями тоже зло... конечно же. непонятно почему правда, до сих пор никто не пояснил. правильно, зачем объяснять, это же итак должно быть понятно! ну и пусть, что в гайдах ни прямым, ни кривым текстом не сказано, что сессии — зло или финализаторы — зло. ну и правильно, писали же толерантные люди. будут они еще нарываться на неприятности. но мы то знаем! зло!!!!!! МСУ. я понял. ты просто НЕ ЗНАЕШЬ почему. а жаль. так бы может научил бы нас уму разуму. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 12:20 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
кстати, уже больше недели... полет нормальный. прошло через операцию больше тысячи файлов. папка чистенькая. в логе ни единой ошибки. исключений, связанных с менеджером памяти не замечено. все тип-топ. можно конечно с бараньей упёртостью талдычить, что так неправильно, но почему это изумитель работает? кто знает? как же так?... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 12:23 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVostt, тебе уже десять раз пережевали, почему сессия - это зло и почему логика в деструкторах - это зло. Если для тебя гайд по архитектуре от MS не аргумент, можешь сходить убить себя об стену. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 12:34 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVostt, сделать можно как угодно и будет работать, но ты уперся хз чем...тебе не только МСУ говорит что кривая архитектура, но ты не хочешь соглашаться упорно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 13:02 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
handmadeFromRuhVostt, сделать можно как угодно и будет работать, но ты уперся хз чем...тебе не только МСУ говорит что кривая архитектура, но ты не хочешь соглашаться упорно да я готов принять это, но как можно согласиться без каких-либо доказательств? без каких-либо объяснений? я специально топик и создал, так как понимаю, что всего не знаю и могу ошибаться. но одних только слов «так неправильно» или «это зло» недостаточно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 14:05 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
МСУ, ты сказочный.... где ???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 14:06 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVosttМСУ, ты сказочный.... где ???? Перечитай все мои ответы заново. Ищущий да обрящет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 14:20 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVostt ссылка о том как использовать финализаторы не помогла осмыслить корявость твоего способа очистки файлов? по моему прям четко расписанное объяснение. твой финализатор занимается не тем, не нужен он вообще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 14:29 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVostt, Нормально. Если всё работает - ты выиграл. Вопли про "плохую архитектуру" - большей частью полная фигня. п..деть - не мешки ворочать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 14:42 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVostt, про финализаторы мы еще продолжаем выбивать твою тупость из башки, это ладно. Ну а по поводу "сессия - зло", смотрю, согласился уже? Так мы медленными, но уверенными темпами научим тебя программировать, и не просто программировать, а писать качественный код ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 14:49 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
пробегаллоhVostt, Нормально. Если всё работает - ты выиграл. Вопли про "плохую архитектуру" - большей частью полная фигня. п..деть - не мешки ворочать... говнокод+костыли работают всегда, но это ничего не меняет, оно также попахивает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 15:12 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
значит, я услышу любые оправдывающие свои слова аргументы из области болтологии, но так и не получу объяснений, так? «зло», «так плохо», «попахивает», «папуня майкрософт сказал», ни о чем мне не говорят. если вы считаете, что это убедительные аргументы, тогда я просто обязан признать, что вы меня убедили. дискуссию можно сворачивать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 19:37 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
в общем я разобрался с вопросом. в моём случае, класс не владеет управляемыми ресурсами , которые необходимо освобождать. но он владеет неуправляемым ресурсом — файл . и хоть это не так очевидно на первый взгляд, ибо я храню не IntPtr, а имя файла, — не имеет значения. для ортодоксальных приверженцев «букве закона и примеров с MSDN», можно хранить хендл файла. но это уже дурка. реализация IDisposable не требуется для работы финализатора, но имеет смысл, если мне понадобиться удалить файл вручную. конечно, надо это делать уже прямым вызовом Dispose(), а не «на стороне». приведенный на MSDN пример с дополнительными методом Dispose(bool) — бэд практикс . больше не рекомендуйте его никому. он нужен при наличии сразу двух видов ресурсов: управляемых и неуправляемых , что уже само по себе плохо из-за сложности в реализации гарантированной последовательности очистки, что ведет прямой дорогой в ад. на этапе выполнения финализатора полностью гарантировано доступны свойства типа string (точно также, как и int и др.). если б присутствовали управляемые ресурсы (объекты IDisposable, коллекции и т.п.), таких гарантий не предоставляется. по всем принципам и догматам, использование финализатора в данном случае полностью оправдано и не приведет к нарушениям работы, при этом он полностью инкапсулирует понятие «временный файл, который должен умереть» , а также не вредит ни в коей мере архитектуре приложения. кто с этим не согласен, жду конкретных аргументов. П.С. ну и так, для отдушины :) — МСУ! ну ты и ламак! гоу вагоны разгружать, в программировании тебе не место ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2013, 21:52 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVostt, о блин такого неадекватного состояния я не ожидал. перечитай что ты пишешь. такая белиберда. Твой финализатор не уместен и не должен освобождать(чистить файлы) ничего. ты на него свалил эту задачу искусственно и пытаешься доказать что это профит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2013, 09:58 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
hVosttв общем я разобрался с вопросом. Ты не разобрался ни с вопросом, ни с проблемой. Ты не в состоянии сформулировать мысль, о чем ты говоришь? hVosttно он владеет неуправляемым ресурсом — файл . и хоть это не так очевидно на первый взгляд, ибо я храню не IntPtr, а имя файла, — не имеет значения. для ортодоксальных приверженцев «букве закона и примеров с MSDN», можно хранить хендл файла. но это уже дурка. Иди в детский сад сходи, порадуй детишек своим фееричным умозаключением. Садись, двойка. FileStream - это управляемый ресурс, CreateFile (win api) - это неуправляемый ресурс. Уровень твоей безбашенной логики ниже плинтуса. hVosttреализация IDisposable не требуется для работы финализатора Да ты просто само откровение. Кто подсказал или научился с документацией работать? hVosttприведенный на MSDN пример с дополнительными методом Dispose(bool) — бэд практикс . больше не рекомендуйте его никому. Замечательно, сам же его привел, а теперь признался, что это плохо. Молодцом! Во-вторых, это не плохо, такой подход нужен для определенных ситуаций при работе с неуправляемыми ресурсами, например, unmanaged соединение с БД. hVosttна этапе выполнения финализатора полностью гарантировано доступны свойства типа string (точно также, как и int и др.). если б присутствовали управляемые ресурсы (объекты IDisposable, коллекции и т.п.), таких гарантий не предоставляется. Само выполнение финализатора не гарантировано, о каких ты так гарантиях свистишь? hVosttпо всем принципам и догматам, использование финализатора в данном случае полностью оправдано и не приведет к нарушениям работы, при этом он полностью инкапсулирует понятие «временный файл, который должен умереть» , а также не вредит ни в коей мере архитектуре приложения. Бред сивой кобылы. Выводы на уровне детского сада. hVosttкто с этим не согласен, жду конкретных аргументов. Тебе целый форум битый день приводит аргументы, ты не видишь и не понимаешь. Так что можешь ждать дальше, объяснять идиоту, что он идиот - глупо. Не поймет и будет сопротивляться. hVosttП.С. ну и так, для отдушины :) — МСУ! ну ты и ламак! гоу вагоны разгружать, в программировании тебе не место Тут дело не в вагонах, ситуация с тобой ослажнена тем, что даже врачи бессильны. Без хирургического вмешательства, разумеется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2013, 10:06 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
Иди в детский сад сходи, порадуй детишек своим фееричным умозаключением. Садись, двойка. FileStream - это управляемый ресурс, CreateFile (win api) - это неуправляемый ресурс. Уровень твоей безбашенной логики ниже плинтуса. Все чудесатее и чудесатие Муслимка, а это для чего? Stream.Dispose - метод , Strem.Finalize ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2013, 11:13 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
SeVaИди в детский сад сходи, порадуй детишек своим фееричным умозаключением. Садись, двойка. FileStream - это управляемый ресурс, CreateFile (win api) - это неуправляемый ресурс. Уровень твоей безбашенной логики ниже плинтуса. Все чудесатее и чудесатие Муслимка, а это для чего? Stream.Dispose - метод , Strem.Finalize Опа, основной ламер подтянулся. Разницу между "ресурсом" и "unmanaged ресурсом" понимаем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2013, 11:36 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
МСУSeVaпропущено... Все чудесатее и чудесатие Муслимка, а это для чего? Stream.Dispose - метод , Strem.Finalize Опа, основной ламер подтянулся. Разницу между "ресурсом" и "unmanaged ресурсом" понимаем? Не могу поверить, что наш Великий Гонокодер не знает, что net - всего лишь обвертка на системными вызовами. В частности, FileStream - именно подобный случай Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Тупое животное, this._handle.Dispose() как по твоему для чего нужно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2013, 12:22 |
|
||
|
[ASP.NET MVC] Ленивая очистка временных файлов
|
|||
|---|---|---|---|
|
#18+
SeVaНе могу поверить, что наш Великий Гонокодер не знает, что net - всего лишь обвертка на системными вызовами. В частности, FileStream - именно подобный случай Не могу поверить, что наш форумный клон долбосева не в курсе, что такое namaged и unmanaged ресурсы, а так же что делает с managed ресурсами сборщик мусора и в каком поколении. SeVaТупое животное, this._handle.Dispose() как по твоему для чего нужно? Глупое чудовище, ты хочешь сказать, что любой экземпляр класса, реализующий IDisposable - это unmanaged ресурс? Убей себя об стену! P.S. Новые отжиги говнокодера продолжаются: долбосева взялся за изучение IDisposable... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2013, 12:30 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=38265775&tid=1358419]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
75ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 434ms |

| 0 / 0 |
