Я пытаюсь использовать один и тот же поток несколько раз. Один для изменения размера изображения, а другой для загрузки изображения. Несмотря на то, что он работает для изменения размера изображения, он, похоже, блокирует другой метод загрузки файла. Я попытался скопировать поток с помощью Stream.CopyTo (MemoryStream), а затем использовать его для загрузки, но он все равно не изменился.
Я открываю поток с помощью PhotoChooserTask. Затем я передаю Stream в метод ImageThumbnail, который создает эскиз изображения, а затем сохраняет его в IsolatedStorage, как показано ниже:
public static void SaveThumbnail(Stream imageStream, string fileName, double imageMaxHeight, double imageMaxWidth)
{
var bitmapImage = new BitmapImage();
bitmapImage.SetSource(imageStream);
var resizedImage = new WriteableBitmap(bitmapImage);
using (var isolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
double scaleX = 1;
using (var fileStream = isolatedStorage.CreateFile(fileName))
{
//do stuff for resizing here...
resizedImage.SaveJpeg(fileStream, newWidth1, newHeight1, 0, 100);
}
}
}
В то же время я повторно использую тот же поток из PhotoChooserTask для загрузки изображения. Иными словами, кажется, что он блокирует друг друга, и не выдается никакой ошибки.
Любые советы?