Win8下 Await SayHello();//这个方法会异步执行而且要调用的人也要加Async很烦人
而且项目里头操作文件有并发问题
加个锁都加不了 
同步执行 如何去掉方法的Async和Await

解决方案 »

  1.   

    可是好多方法都必须要用到await例如读取文件的时候
    我怎么能够把这些必须要await的地方用其他方法替代掉!
      

  2.   

    真是R了。那你自自己用重写的方法多定义一些写两个一个有await 一个没有。不就完了么
      

  3.   

    public async static Task<WriteableBitmap> ConverWriteableBitmapByImageFile(StorageFile imageFile, WriteableBitmap wbsrcImage)
            {
                if (imageFile != null)
                {
                    using (IRandomAccessStream stream = await imageFile.OpenAsync(FileAccessMode.Read))
                    {
                        BitmapDecoder decoder = await BitmapDecoder.CreateAsync(stream);
                        PixelDataProvider pixelData = await decoder.GetPixelDataAsync();
                        byte[] detachPixelData = pixelData.DetachPixelData();
                        wbsrcImage = new WriteableBitmap((int)decoder.PixelWidth, (int)decoder.PixelHeight);
                        Stream bmpstream = wbsrcImage.PixelBuffer.AsStream();
                        bmpstream.Seek(0, SeekOrigin.Begin);
                        byte[] pixels = new byte[(uint)bmpstream.Length];
                        bmpstream.Write(detachPixelData, 0, pixels.Length);
                    }
                }
                return wbsrcImage;
            }你看那个await能去掉啊