powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / [ASP.NET MVC] Ленивая очистка временных файлов
75 сообщений из 75, показаны все 3 страниц
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262379
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понадобилось сделать crop + resize на стороне клиента. Если клиентский браузер поддерживает FileStream, картинку перед манипуляциями можно отобразить сразу, без участия сервера.

Но для поддержки не самых свежих браузеров приходится загружать файл через AJAX и после отображать клиенту в <img /> по выданному сервером URL. Картинка загружается и хранится как временный файл. Рано или поздно файл должен быть удален, чтобы не загаживать папку тонной загруженных картинок. Вот как это сделал я:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
		public class TempImage : IDisposable
		{
			public string FileName { get; set; }
			public string ContentType { get; set; }
			public string TempPath { get; set; }

			private bool _isDisposed;

			public void Dispose()
			{
				if (_isDisposed)
					return;
				try
				{
					System.IO.File.Delete(TempPath);
					_isDisposed = true;
				}
				catch (Exception ex)
				{
					Log.DebugException(ex.Message, ex);
				}
			}

			~TempImage()
			{
				Dispose();
			}
		}



Объект TempImage запихивается в сессию пользователя и хранится там по ключу. Прямого обращения к файлу нет, только через Action по переданному ключу после аплоада.

Мои тесты показали, что все файлы до единого рано или поздно удаляются. Правда не всегда сразу после смерти сессии, а когда происходит уборка «мусора» в памяти.

Подскажите, есть в данном решении какие-нибудь подводные камни? Может надо как-то по-другому?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262403
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имхо сессия зло. я б сделал фоновую службу и там бы чистил бы по времени жизни к примеру вызывал бы её раз в 1 час и по папке проходился бы все что больше часа валяется удалял бы, писать минимум кода.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262417
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

некий Петя загрузил картинку и приготовился её кропать. в это время на сервере служба берет и чистит все временные файлы.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262423
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ну да, не заметил, если учитывать время создания файла... но хотелось бы обойтись средствами ASP.NET, без службы.

почему сессия — зло?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262435
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сильно упрощенный код контроллера:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
		private const string TempFolder = "~/App_Data/tmp/";

		public ActionResult Image(string id)
		{
			var temp = Session[id] as TempImage;
			if (temp == null || !System.IO.File.Exists(temp.Path))
				return HttpNotFound();
			return File(temp.Path, temp.ContentType);
		}

		[HttpPost]
		public ActionResult Upload()
		{
			if (Request.Files.Count > 0 && Request.Files[0] != null && Request.Files[0].ContentLength > 0)
			{
				var upload = Request.Files[0];
				var temp = new TempImage
					{
						FileName = upload.FileName,
						ContentType = upload.ContentType
					};
				var token = Guid.NewGuid().ToString("N");
				temp.TempPath = Server.MapPath(TempFolder + token + System.IO.Path.GetExtension(upload.FileName));
				upload.SaveAs(temp.TempPath);
				Session[token] = temp;
				return Json(new
					{
						status = "Ok",
						image = Url.Action("Image", new { id = token }),
						token
					});
			}
			return Json(new
				{
					status = "Error"
				});
		}
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262458
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, бросается в глаза ошибочная реализация финализатора. В момент его исполнения значения TempPath/ContentType уже могут быть удалены сборщиком мусора так что нужна проверка на null.

Ты проверял удаляются ли файлы если происходит перезапуск пула приложений?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262464
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazile,

На сколько я понимаю, до выполнения финализатора внутренние объекты еще живые в понимании менеджера памяти. Тесты показали, что единственный вариант, когда финализатор не срабатывает, это убить процесс в памяти, ну или какой-то фатальный сбой (пока не наблюдалось). В других случаях, даже с исключениями, допалзающими до базового объекта приложения, файлы удаляются. Остановка и перезапуск пула вызывает немедленную сборку мусора и все временные файлы удаляются.

В идеале хотелось бы уничтожения файлов при смерти сессии, но пока не знаю как это сделать.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262468
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://msdn.microsoft.com/en-us/library/ms244737(v=vs.80).aspx где перегрузка Dispose))) раз по паттерну. так камешек мелкий)
ну можно на Session_End кинуть , но там траблы могут быть если память не изменяет. фоновый процесс и не мучать мозг
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262485
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНа сколько я понимаю, до выполнения финализатора внутренние объекты еще живые в понимании менеджера памяти.
Нас должно больше волновать что происходит во время его выполнения, а не в непонятный момент времени "до выполнения". Когда выполняется ~TempImage() экземплярные поля могут уже быть удалены.

hVosttОстановка и перезапуск пула вызывает немедленную сборку мусора и все временные файлы удаляются.
Это вызывает сомнение т.к. зачем выполнять сборку мусора если процесс завершается и вся память будет освобождена ОС в любом случае.

hVosttВ идеале хотелось бы уничтожения файлов при смерти сессии, но пока не знаю как это сделать.
Увы нет способа отловить момент завершения сессии. Есть событие Application.SessionEnd, но на него полагаться не стоит.

Можно в фоновом потоке удалять ненужные файлы.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262493
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Удалять должен отдельный сервис - вин сервис через определенный интервал времени либо консольная утилита по шедулеру. Веб приложение не должно знать ни о каких там периодических заданиях. За деструктуризацию через тильду ~ уволить без выплаты выходного пособия. Точка.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262497
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazile, handmadeFromRu,

можно ли считать временный файл нативным ресурсом (ведь я храню всего лишь путь, что является вполне себе управляемым ресурсом) и делать сложную реализацию паттерна IDisposable, как указано в примере на MSDN, или то, что все при нынешней реализации все работает можно считать обыкновенным везением, и не всегда это будет работать?

про Session_End тоже думал, для верности видимо можно производить ещё и там очистку.
интересует паттерн и родные возможности фреймворка и .NET

внешняя служба не укладывается в webdeploy и на некоторых хостингах (shared) попросту нет возможности в такой реализации.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262501
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

я посмотрю как ты на шареде пропихнешь свой чудо-сервис. не у всех есть VDS/VPS.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262503
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

а про вызов деструктора в финализаторе, иди лучше поучи лопоухих ламеров из майкрософт:

Код: c#
1.
2.
3.
4.
5.
 ~Resource() 
    {
        // Finalizer calls Dispose(false)
        Dispose(false);
    }



..из примера на MSDN
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262513
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, тогда гибридный вариант для случая с шаредхостингом. сделать джобу на кварце(ну либ поток на худой конец фоновый) и при старте апп пусть чекает каждые 5 минут на наличия мусора и все ок. если апп выгрузиться и загрузиться почистить полюбак. профит
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262523
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttпочему сессия — зло?
И всегда злом была. Почитай Microsoft Application Architecture: http://codearticles.ru/articles/2327
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262524
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazileКогда выполняется ~TempImage() экземплярные поля могут уже быть удалены.

Выдержка из книжки Рихтера (держу сейчас в руках):

Финализацией называется поддерживаемый CLR механизм, позволяющий объекту выполнить корректную очистку, прежде чем сборщик мусора освободить занятую им память .

Finalize всегда исполняется в блоке finally. Основное отличие финализатора от деструктра — недетерминированность. В моём случае это не критично. Главное чтобы файл удалился. При смерти сессии удаление файла наилучший вариант, можно сделать это в Session_End. Но для верности, можно положиться на сборщик мусора. Предложите другой вариант, кроме отдельного сервиса, службы или шедулера — это вообще не вариант для моего случая. Нет доступа к службам и шедулерами.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262527
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

... а вообще, это принципиально, сохранять временные изображения в виде файлов? ... Я имею в виду, если все преобразования выполнить в MemoryStream, потом вылить его в какую-то пустую страницу через Response, а в качестве урла отдаваемой картинки указать эту страницу? ... я не уверен, как это отработает в MVC, но в Web Forms работает ... Тогда и удалять ничего не надо ...
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262528
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuhVostt, тогда гибридный вариант для случая с шаредхостингом. сделать джобу на кварце(ну либ поток на худой конец фоновый) и при старте апп пусть чекает каждые 5 минут на наличия мусора и все ок. если апп выгрузиться и загрузиться почистить полюбак. профит
прям в мвц сайте
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262529
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, про деструкторы и шедулеры я спорить не буду, подрастешь, сам поймешь. У меня нет времени обучать тупоголового правильным практикам.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262532
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУhVosttпочему сессия — зло?
И всегда злом была. Почитай Microsoft Application Architecture: http://codearticles.ru/articles/2327

Где? Ты скинул какую-то копипасту неизвестно откуда и назвал её Microsoft Application Architecture. Кроме того, без единой строчки объяснений почему именно так (сам-то хоть понимаешь? или тупо руководствуешься по принципу: чукча не писатель, чукча мсдн-читатель), что снижает ценность этих строк до абсолютного нуля.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262533
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

типичная детская отговорка
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262539
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
carrotikhVostt,

... а вообще, это принципиально, сохранять временные изображения в виде файлов? ... Я имею в виду, если все преобразования выполнить в MemoryStream, потом вылить его в какую-то пустую страницу через Response, а в качестве урла отдаваемой картинки указать эту страницу? ... я не уверен, как это отработает в MVC, но в Web Forms работает ... Тогда и удалять ничего не надо ...

преобразования выполняются только после кропа. сперва надо получить, и сразу же отдать тот же самый файл, потом получить параметры ресайза и кропа, выполнить их над файлом, старый файл удалить, а новый уже обработанный сохранить где надо.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262541
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ если его ограничивают шарехостинг то надо как то ж выкручиваться (про шедулеры), а вот про деструкторы поясни что не так? Вообще понятие деструктуризации в нете не корректно либ детерминированный вызов (Dispose) либо недетерминированный (Finalizer).
hVostt , сессия зло тут нечего даж говорить
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262547
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

да я понимаю. известная на весь мир истена. не понятно только как это зло попало в ASP.NET и почему грамотное использование сессий всегда давало ощутимый профит.

например, пишут в рекомендациях, что корзинку в интернет-магазинах не надо хранить в сессии — не понятно зачем такое писать ? это же итак логично и должно быть понятно без этих рекомендаций. а писать «зло» бессмысленно. любой инструмент и возможность можно использовать так, что это будет злом.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262552
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttполучить параметры ресайза и кропа, выполнить их над файлом, старый файл удалить, а новый уже обработанный сохранить где надо.Новый файл и есть временный файл?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262567
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhVosttполучить параметры ресайза и кропа, выполнить их над файлом, старый файл удалить, а новый уже обработанный сохранить где надо.Новый файл и есть временный файл?

1. на странице пользователь нажимает «загрузить файл», выбирает файл с картинкой
2. файл загружается через AJAX, возвращается временный УРЛ на картинку
3. картинка отображается пользователю и он её кропает и расайзит, нажимает «сохранить»
4. на сервер уходят параметры кропа и ресайза в JSON, сервер выполняет кроп и ресайз по параметром над уже ранее загруженным файлом, результат сохраняет куда надо (допустим, как аватарку пользователя), временный файл убивается

иной сценарий должен предусматривать, что пользователь передумает кропать и вернется к серфингу или вообще уйдет с сайта. рано или поздно временный файл должен быть уничтожен.

зачем тут нужен какой-то сервис, если это делается штатными средствами — не понятно. я тещу уже 3 день, все работает как часы. но я подумал, что я мог что-то не учесть, и может возникнуть ситуация, когда это не сработает, вот и возник вопрос, все ли я правильно делаю. а мне начали советовать какие-то сервисы, и не понятно почему именно вот только ТАК, через сервис правильно, но объяснить толком почему никто не может.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262570
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая штука, шедулер (aka cron) называется. Запускается раз в сутки и удаляет всё ненужное. А про шаред хостинг и asp.net это наверное шутка была.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262572
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ну да, сессия это зло. самое зачетное объяснение из всего, что я когда-либо слышал.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262580
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stЕсть такая штука, шедулер (aka cron) называется. Запускается раз в сутки и удаляет всё ненужное. А про шаред хостинг и asp.net это наверное шутка была.

забейте. особенно с кроном в виндах и на шаредах.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262591
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кста, спасибо handmadeFromRu за ссыль на описание Dispose паттерна, надо детальнее с этим разобраться, чтобы исключить любое необъяснимое поведение (хотя пока такого небыло).

ну и спасибо МСУ, просто за то что почтил своим присутствием ))
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262600
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я к тому, что данный вопрос как раз таки по похожей к нам задаче, где тоже юзерами грузятся фотки на сервер (*.nix), остаётся мусор, который и удаляется по крону раз в сутки php-скриптом. Подобная система у нас на паре сайтов используется уже несколько лет, проблем не было. Городить какие-то сессии для этого, ну не знаю, тут уж на любителя.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262612
st_st
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
p.s. а если сервер повиснет и ребутнётся, енто самое dispose произойдёт или мусор навсегда останется висеть в папках?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262615
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stЯ к тому, что данный вопрос как раз таки по похожей к нам задаче, где тоже юзерами грузятся фотки на сервер (*.nix), остаётся мусор, который и удаляется по крону раз в сутки php-скриптом. Подобная система у нас на паре сайтов используется уже несколько лет, проблем не было. Городить какие-то сессии для этого, ну не знаю, тут уж на любителя.

Я понимаю. Но на Win-шаредах нет доступа к шедулеру. Можно слезно попросить техподдержку и даже добиться результатов, но это не тру-вей. Кроме того PHP и ASP.NET работают совершенно по разному принципу. После обработки запроса PHP умирает, а ASP.NET живёт. И моё решение работает, и вот что удивительно: пока никто не удосужился написать почему так неправильно, какими проблемами это может обернуться — вот что меня интересует.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262620
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_stp.s. а если сервер повиснет и ребутнётся, енто самое dispose произойдёт или мусор навсегда останется висеть в папках?

при запуске пула приложения (грубо говоря в Global.asax) папка чистится. как раз для таких случаев.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262690
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
ниче вы нагородили, у меня была ситуация раз в сутки отправлять sms оповещения, я просто раз в сутки после 12 ночи отправлял
всем что надо, инициализатором являлся первый запрос в новых сутках, работает уж три года как часы, тоже была мысль через сессию
с отложенной отправкой на сервере sms, тык никогда сессиями не пользовался и тут решил что не нужна..,
а что если первый запрос не придет никогда? - ну видно не судьба, с такой низкой активностью сайта..
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262750
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи,

выполнение какой-то работы по расписанию как раз больше подходит для различных демонов, сервисов и шедулеров. если ожидать первого запроса, то этого запроса может и не произойти очень долго — теоретически. хотя я по логам смотрел, постоянно шарятся всякие гугло, яндекс и другие боты :)
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262765
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
так то да, но демонов не захотелось, просить провайдера что бы пинал сайт по расписанию тем более, а написать пару строк кода
абсолютно труда не составило, тем более тут ведь можно отправлять смс первым сообщением каждого часа, или каждые 10 минут,
как душе удобно, а на сайте да - постоянно ктонить лазит, тем более время отправки не критично ибо они приходят на 2-3 день после отправки с сайта потребителю ( отложенная отправка у провайдера смс), у вас ведь тоже лимит по диску не горит= 1-2 гигабайта - мелочь.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262781
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
carrotikhVostt,

... а вообще, это принципиально, сохранять временные изображения в виде файлов? ... Я имею в виду, если все преобразования выполнить в MemoryStream, потом вылить его в какую-то пустую страницу через Response, а в качестве урла отдаваемой картинки указать эту страницу? ... я не уверен, как это отработает в MVC, но в Web Forms работает ... Тогда и удалять ничего не надо ...проблема в том, что файл отправляется как POST, а <img> может получить на себя картинку только через GET.


можно отправить форму с файлом в iframe. На сервере просто отдать полученные данные обратно:
Код: c#
1.
2.
3.
4.
5.
byte[] b = new byte[context.Request.Files["myfile"].ContentLength];
context.Request.Files["myfile"].InputStream.Read(b, 0, b.Length);
context.Response.ContentType = "image/png";
context.Response.BinaryWrite(b);
context.Response.End();



на клиенте отловить загрузку фрейма и картинки в нем (браузер сам создает простейшую разметку внутри фрейма, в ней - img), после чего задать фрейму размеры картинки.


в этом варианте временные файлы не нужны. Правда, придется потом ещё раз файл отправлять, но это ведь нечасто, да и большинство юзеров пользуются нормальными браузерами, люде тоже не дураки...
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262876
Фотография a_titeev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зачем вообще здесь временные файлы? для тех операций, которые перечислены, их не надо вообще...
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262945
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_titeev,

?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262946
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный Меч,

в современных браузерах есть FileStream, и лишняя передача на сервер не требуется.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262949
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУпропущено...

И всегда злом была. Почитай Microsoft Application Architecture: http://codearticles.ru/articles/2327

Где? Ты скинул какую-то копипасту неизвестно откуда и назвал её Microsoft Application Architecture. Кроме того, без единой строчки объяснений почему именно так (сам-то хоть понимаешь? или тупо руководствуешься по принципу: чукча не писатель, чукча мсдн-читатель), что снижает ценность этих строк до абсолютного нуля.

Если для тебя Microsoft Application Architecture ничего не значит, то я сожалею об этом.
http://codearticles.ru/articles/1522
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38262986
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

facepalm.jpg

на мой взгляд, ты просто ищешь повод лишний раз ссылку на свой ресурс запулить. не важно как это относится к заданной теме и вопросу. да, наверное планируется масштабная монетизация. желаю успехов конечно,.. ну и чтобы модераторы этого форума так и продолжали смотреть на твою прокачку сквозь пальцы.

только смысла в твоих сообщениях по прежнему -0.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263016
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЯростный Меч,

в современных браузерах есть FileStream, и лишняя передача на сервер не требуется.FileReader, ты хотел сказать?
Ну да, где он есть, там все просто, читаем бейс64, и превед. Топик-то о старых браузерах, будь они неладны...
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263103
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, тебе просто нечем понимать, как обычно. Я тебе дал полную информацию что, как и почему. Ты спросил откуда инфа. Я дал инфу. Если ты не вкуриваешь, что такое майкрософтский архитектурный гайд - сходи в сад.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263155
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУ,

а про вызов деструктора в финализаторе, иди лучше поучи лопоухих ламеров из майкрософт:

Код: c#
1.
2.
3.
4.
5.
 ~Resource() 
    {
        // Finalizer calls Dispose(false)
        Dispose(false);
    }



..из примера на MSDN

Причем тут возможности деструктора и зло их использования?

...Программист не может управлять моментом вызова деструктора, потому что момент вызова определяется сборщиком мусора. Сборщик мусора проверяет наличие объектов, которые больше не используются приложением.

...В целом, язык C# не требует управления памятью в той степени, в какой это требуется в случае разработки кода на языке, не рассчитанном на среду выполнения со сборкой мусора. Это связано с тем, что сборщик мусора платформы .NET Framework неявным образом управляет выделением и высвобождением памяти для объектов. Однако при инкапсуляции приложением неуправляемых ресурсов, например окон, файлов и сетевых подключений, для высвобождения этих ресурсов следует использовать деструкторы. Если объект требует уничтожения, то сборщик мусора запускает выполнение метода Finalize этого объекта.

У тебя есть резервирование неуправляемых ресурсов? Нету. Начинай уже думать головой, а не задом.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263159
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttна мой взгляд, ты просто ищешь повод лишний раз ссылку на свой ресурс запулить. не важно как это относится к заданной теме и вопросу.
1. Если на моем ресурсе есть ответ на тему, я эту ссылку предоставляю.
2. Никогда и нигде я не использую ссылки не по теме. То, что у тебя трудности с пониманием - не мои проблемы.
3. Если это запрещено или будет запрещено правилами форума, я перестану это делать.
4. Если тебе что-то не нравится, можешь пожаловаться модератору.

hVosttда, наверное планируется масштабная монетизация.
Не планировалась и не планируется.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263401
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

мил человек, объект в своём финализаторе удаляет файл. когда будет выполнен финализатор точно не известно, но по задаче этот как раз и не критично: главное гарантированное удаление файла, момент не так важен.

так вот, ответь на вопрос: к каким проблемам это может привести? почему так неправильно? что в этом плохого?

если будешь тыкать гайдом, а не ответишь прямо на вопросы, то ты сути происходящего вообще не понимаешь, и гайдов своих тоже не понимаешь.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263515
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
А Вы знаете, что финализатор и может не вызываться в некоторых случаях,
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263524
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttобъект в своём финализаторе удаляет файл.
Это плохая архитектура. Причем, критически плохая.

hVosttтак вот, ответь на вопрос: к каким проблемам это может привести? почему так неправильно? что в этом плохого?
Я уже ответил. Финализатор приемлем только для неуправляемых ресурсов, если в процессе работы класса ты наоткрывал всякие хендлы и дескрипторы. Строить бизнес логику на деструкторах - это верх ламеризма.

hVosttесли будешь тыкать гайдом, а не ответишь прямо на вопросы, то ты сути происходящего вообще не понимаешь, и гайдов своих тоже не понимаешь.
Ты их сначала научись читать правильным местом. Тогда от тебя будет толк.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263541
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,
Вернее применим как правило, в патерне IDisposable, остальное это как бы эквилибристика хака и к промышленному коду отношение иметь не должно, говорить что тут реализован паттерн IDisposable не приходится , ибо его тут нет и в помине ( есть только знакомый интерфейс IDisposable)
а вот тут мне кажется очень тонкое место Log.DebugException(ex.Message, ex) мы ошибку заносим в очередь на запись, удалится ли this из памяти вот вопрос... или перейдет в долгоживущие?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263559
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи, у него сама идея с временными файлами утопична. Никто и не сомневался в способностях топикстартера - выдумать полуработающий велосипед и не замечать бревен в ресницах. Почему бы не хранить это темповое изображение в БД (varbinary / filestream). Никакого оверхеда в файловой системе - все операции на лету.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263578
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,
Ну почему утопична, она ведь работает, про базу данных разумно, ибо у хостеров размер баз как правило не ограничен, не в пример
дисковой квоте, я уже одного поймал на этом..
Все дело когда... и как... то что не оптимально ( ну с нашей точки зрения , да бог с ним), вот при детальном рассмотрении реализации диспозе ( я то думал там есть такая) а там нет ничего, вот это и настораживает.
Ведь по существу весь патерн замыкается на удаление неуправляемых ресурсов при помощи синтаксического сахара using
ну и сам финализатор, там же ясно сказано "Метод Finalize используется для операций очистки неуправляемых ресурсов, хранимых в текущем объекте до его удаления" там нет слова как правило..
там по существу вся конструкция держится за счет using - поставил программист его - выполнился метод Dispose(), по наитию,
не поставил ( ну забыл) выполнился метод через вызов финализатора( когда то может быть),( защита от разгильдяйства) при using так же выполняется деректива к уборщику GC.SuppressFinalize, и он помечает объект, что при удалении его - финализатор вызывать не надо, это ж ему легче,
это ж не хилая операция прибраться в памяти.., а тут получается что и диспозе не нужен, обыкновенную функцию влепи чистить папку
и все, а финализатор что так вызовется что так..
ну и про запись в лог, терзают смутные сомнения..
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263587
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263589
Фотография a_titeev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostta_titeev,

? попробовай юзер-профиль использовать для этого. грузи сразу в базу. файлы то зачем? я так в свое время делал. нормально вышло. плюс еще даже - несклько разных может быть иображений. с каждым отдельно можно работать. также как и с корзиной, кстати, по примеру... а дальше зависит от того как используется аутентификация. если все анонимы, то можно и чистить, как заведено, либо мож даже оставлять, сохранив последнюю модификацию.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38263592
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи Как применять IDisposable и финализаторы: 3 простых правила
О чем я и говорил, финализатор зло, тема баян - холиварили лет 5 назад на форуме.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264287
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
соленые огурцы — зло! при употреблении с кислым молоком (которое тоже кстати зло еще то), вызывает приступы диареи.

про кухонные ножи говорить не приходится, зло! сколько пальцев пострадало в результате их использования, да и уголовщины, связанной с ними тоже не мало.

а, ну и финализотры, с сессиями тоже зло... конечно же. непонятно почему правда, до сих пор никто не пояснил. правильно, зачем объяснять, это же итак должно быть понятно! ну и пусть, что в гайдах ни прямым, ни кривым текстом не сказано, что сессии — зло или финализаторы — зло. ну и правильно, писали же толерантные люди. будут они еще нарываться на неприятности. но мы то знаем! зло!!!!!!

МСУ. я понял. ты просто НЕ ЗНАЕШЬ почему. а жаль. так бы может научил бы нас уму разуму.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264294
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, уже больше недели... полет нормальный. прошло через операцию больше тысячи файлов. папка чистенькая. в логе ни единой ошибки. исключений, связанных с менеджером памяти не замечено. все тип-топ.

можно конечно с бараньей упёртостью талдычить, что так неправильно, но почему это изумитель работает? кто знает? как же так?...
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264317
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, тебе уже десять раз пережевали, почему сессия - это зло и почему логика в деструкторах - это зло. Если для тебя гайд по архитектуре от MS не аргумент, можешь сходить убить себя об стену.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264392
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
сделать можно как угодно и будет работать, но ты уперся хз чем...тебе не только МСУ говорит что кривая архитектура, но ты не хочешь соглашаться упорно
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264512
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuhVostt,
сделать можно как угодно и будет работать, но ты уперся хз чем...тебе не только МСУ говорит что кривая архитектура, но ты не хочешь соглашаться упорно

да я готов принять это, но как можно согласиться без каких-либо доказательств? без каких-либо объяснений? я специально топик и создал, так как понимаю, что всего не знаю и могу ошибаться. но одних только слов «так неправильно» или «это зло» недостаточно.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264515
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

ты сказочный.... где ????
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264543
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУ, ты сказочный.... где ????
Перечитай все мои ответы заново. Ищущий да обрящет.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264563
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
ссылка о том как использовать финализаторы не помогла осмыслить корявость твоего способа очистки файлов? по моему прям четко расписанное объяснение. твой финализатор занимается не тем, не нужен он вообще.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264584
hVostt,
Нормально. Если всё работает - ты выиграл. Вопли про "плохую архитектуру" - большей частью полная фигня.
п..деть - не мешки ворочать...
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264600
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt, про финализаторы мы еще продолжаем выбивать твою тупость из башки, это ладно. Ну а по поводу "сессия - зло", смотрю, согласился уже?
Так мы медленными, но уверенными темпами научим тебя программировать, и не просто программировать, а писать качественный код
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38264642
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробегаллоhVostt,
Нормально. Если всё работает - ты выиграл. Вопли про "плохую архитектуру" - большей частью полная фигня.
п..деть - не мешки ворочать...
говнокод+костыли работают всегда, но это ничего не меняет, оно также попахивает.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38265169
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
значит, я услышу любые оправдывающие свои слова аргументы из области болтологии, но так и не получу объяснений, так?

«зло», «так плохо», «попахивает», «папуня майкрософт сказал», ни о чем мне не говорят. если вы считаете, что это убедительные аргументы, тогда я просто обязан признать, что вы меня убедили. дискуссию можно сворачивать.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38265265
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в общем я разобрался с вопросом.

в моём случае, класс не владеет управляемыми ресурсами , которые необходимо освобождать.

но он владеет неуправляемым ресурсомфайл . и хоть это не так очевидно на первый взгляд, ибо я храню не IntPtr, а имя файла, — не имеет значения. для ортодоксальных приверженцев «букве закона и примеров с MSDN», можно хранить хендл файла. но это уже дурка.

реализация IDisposable не требуется для работы финализатора, но имеет смысл, если мне понадобиться удалить файл вручную. конечно, надо это делать уже прямым вызовом Dispose(), а не «на стороне». приведенный на MSDN пример с дополнительными методом Dispose(bool) — бэд практикс . больше не рекомендуйте его никому. он нужен при наличии сразу двух видов ресурсов: управляемых и неуправляемых , что уже само по себе плохо из-за сложности в реализации гарантированной последовательности очистки, что ведет прямой дорогой в ад.

на этапе выполнения финализатора полностью гарантировано доступны свойства типа string (точно также, как и int и др.). если б присутствовали управляемые ресурсы (объекты IDisposable, коллекции и т.п.), таких гарантий не предоставляется.

по всем принципам и догматам, использование финализатора в данном случае полностью оправдано и не приведет к нарушениям работы, при этом он полностью инкапсулирует понятие «временный файл, который должен умереть» , а также не вредит ни в коей мере архитектуре приложения.

кто с этим не согласен, жду конкретных аргументов.


П.С. ну и так, для отдушины :) — МСУ! ну ты и ламак! гоу вагоны разгружать, в программировании тебе не место
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38265598
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
о блин такого неадекватного состояния я не ожидал. перечитай что ты пишешь. такая белиберда. Твой финализатор не уместен и не должен освобождать(чистить файлы) ничего. ты на него свалил эту задачу искусственно и пытаешься доказать что это профит.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38265621
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttв общем я разобрался с вопросом.
Ты не разобрался ни с вопросом, ни с проблемой. Ты не в состоянии сформулировать мысль, о чем ты говоришь?

hVosttно он владеет неуправляемым ресурсомфайл . и хоть это не так очевидно на первый взгляд, ибо я храню не IntPtr, а имя файла, — не имеет значения. для ортодоксальных приверженцев «букве закона и примеров с MSDN», можно хранить хендл файла. но это уже дурка.
Иди в детский сад сходи, порадуй детишек своим фееричным умозаключением. Садись, двойка.
FileStream - это управляемый ресурс, CreateFile (win api) - это неуправляемый ресурс. Уровень твоей безбашенной логики ниже плинтуса.

hVosttреализация IDisposable не требуется для работы финализатора
Да ты просто само откровение. Кто подсказал или научился с документацией работать?

hVosttприведенный на MSDN пример с дополнительными методом Dispose(bool) — бэд практикс . больше не рекомендуйте его никому.
Замечательно, сам же его привел, а теперь признался, что это плохо. Молодцом!
Во-вторых, это не плохо, такой подход нужен для определенных ситуаций при работе с неуправляемыми ресурсами, например, unmanaged соединение с БД.

hVosttна этапе выполнения финализатора полностью гарантировано доступны свойства типа string (точно также, как и int и др.). если б присутствовали управляемые ресурсы (объекты IDisposable, коллекции и т.п.), таких гарантий не предоставляется.
Само выполнение финализатора не гарантировано, о каких ты так гарантиях свистишь?

hVosttпо всем принципам и догматам, использование финализатора в данном случае полностью оправдано и не приведет к нарушениям работы, при этом он полностью инкапсулирует понятие «временный файл, который должен умереть» , а также не вредит ни в коей мере архитектуре приложения.
Бред сивой кобылы. Выводы на уровне детского сада.

hVosttкто с этим не согласен, жду конкретных аргументов.
Тебе целый форум битый день приводит аргументы, ты не видишь и не понимаешь. Так что можешь ждать дальше, объяснять идиоту, что он идиот - глупо. Не поймет и будет сопротивляться.

hVosttП.С. ну и так, для отдушины :) — МСУ! ну ты и ламак! гоу вагоны разгружать, в программировании тебе не место
Тут дело не в вагонах, ситуация с тобой ослажнена тем, что даже врачи бессильны. Без хирургического вмешательства, разумеется.
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38265775
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иди в детский сад сходи, порадуй детишек своим фееричным умозаключением. Садись, двойка.
FileStream - это управляемый ресурс, CreateFile (win api) - это неуправляемый ресурс. Уровень твоей безбашенной логики ниже плинтуса.


Все чудесатее и чудесатие
Муслимка, а это для чего?
Stream.Dispose - метод ,
Strem.Finalize
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38265818
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaИди в детский сад сходи, порадуй детишек своим фееричным умозаключением. Садись, двойка.
FileStream - это управляемый ресурс, CreateFile (win api) - это неуправляемый ресурс. Уровень твоей безбашенной логики ниже плинтуса.


Все чудесатее и чудесатие
Муслимка, а это для чего?
Stream.Dispose - метод ,
Strem.Finalize

Опа, основной ламер подтянулся. Разницу между "ресурсом" и "unmanaged ресурсом" понимаем?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38265995
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ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.
 /// <summary>
    /// Releases the unmanaged resources used by the <see cref="T:System.IO.FileStream"/> and optionally releases the managed resources.
    /// </summary>
    /// <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources. </param>
    [SecuritySafeCritical]
    protected override void Dispose(bool disposing)
    {
      try
      {
        if (this._handle == null || this._handle.IsClosed || this._writePos <= 0)
          return;
        this.FlushWrite(!disposing);
      }
      finally
      {
        if (this._handle != null && !this._handle.IsClosed)
          this._handle.Dispose();
        this._canRead = false;
        this._canWrite = false;
        this._canSeek = false;
        base.Dispose(disposing);
      }
    }



Тупое животное, this._handle.Dispose() как по твоему для чего нужно?
...
Рейтинг: 0 / 0
[ASP.NET MVC] Ленивая очистка временных файлов
    #38266027
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaНе могу поверить, что наш Великий Гонокодер не знает, что net - всего лишь обвертка на системными вызовами.
В частности, FileStream - именно подобный случай
Не могу поверить, что наш форумный клон долбосева не в курсе, что такое namaged и unmanaged ресурсы, а так же что делает с managed ресурсами сборщик мусора и в каком поколении.

SeVaТупое животное, this._handle.Dispose() как по твоему для чего нужно?
Глупое чудовище, ты хочешь сказать, что любой экземпляр класса, реализующий IDisposable - это unmanaged ресурс? Убей себя об стену!

P.S. Новые отжиги говнокодера продолжаются: долбосева взялся за изучение IDisposable...
...
Рейтинг: 0 / 0
75 сообщений из 75, показаны все 3 страниц
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / [ASP.NET MVC] Ленивая очистка временных файлов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]