Есть код, функция которая меняет разрешение картинки.
public void NewImage(int needHeight, int needWidth, string oldFile, string newFile)
{
double newWidth, newHeight;
double UVR;
Image FullSizeImage = Image.FromFile(oldFile);
FullSizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
FullSizeImage.RotateFlip(System.Drawing.RotateFlipType.Rotate180FlipNone);
if (FullSizeImage.Width > FullSizeImage.Height)
{
UVR = FullSizeImage.Width / needWidth;
newWidth = needWidth;
newHeight = FullSizeImage.Height / UVR;
}
else
{
if (FullSizeImage.Height > FullSizeImage.Width)
{
UVR = FullSizeImage.Height / needHeight;
newHeight = needHeight;
newWidth = FullSizeImage.Width / UVR;
}
else
{
newHeight = needHeight;
newWidth = needWidth;
}
}
Image NewImage = FullSizeImage.GetThumbnailImage(Convert.ToInt32(newWidth), Convert.ToInt32(newHeight), null, IntPtr.Zero);
FullSizeImage.Dispose();
NewImage.Save(newFile);
}
Возникает ситуация, если картинка будет очень большая, то выполнение будет не мгновенно. Меня интересует: подвиснет ли весь сервер на время выполнения этого кода?
То бишь, необходимо ли мне самому написать выделение второго потока?