У меня есть следующий раздел кода для веб-клиента:
var client = new WebClient();
client.DownloadProgressChanged += (sender, args) =>
client_DownloadProgressChanged(sender, args, this.Context.ConnectionId);
client.DownloadDataCompleted += (sender, evt) =>
{
byte[] result = evt.Result;
aLongRunningTask(result);**
}
Моя проблема заключается в том, что функция "aLongRunningTask" должна быть запущена после завершения метода downloaddata, который работает нормально, но, поскольку файл, который я получаю, очень большой, в итоге получается, что строка в памяти занимает много места в памяти, в котором нет необходимости, так как мне нужен только байт [].
evt.Result, к сожалению, свойство только для чтения, поэтому я не могу очистить его и не могу обнулить клиента, так как я запускаю aLongRunningTask.
Есть ли способ перезаписать evt.Result, чтобы его можно было очистить, или другой способ уменьшить использование памяти.