繁体   English   中英

c#异步等待任务:不能等待'void'

[英]c# async await task : cannot await 'void'

我一直在为一个项目使用 Xabe.FFmpeg。 任务、异步和等待对我来说是新的,但我一直在学习。 我尝试使用 Xabe.FFmpeg 进行基本转换。 我收到一条错误消息,提示“无法等待‘void’”。

public partial class FormMain : Form
{
    public FormMain()
    {
        InitializeComponent();
    }

    private void FormMain_Load(object sender, EventArgs e)
    {
        Run().GetAwaiter().GetResult();
    }

    private static async Task Run()
    {
        string inputFileName = @"C:\Users\npsie\Videos\Sample.mkv";
        string outputFileName = Path.ChangeExtension(inputFileName, ".mp4");
        await FFmpeg.FFmpeg.Conversions.FromSnippet.ToMp4(inputFileName, outputFileName).Start();
    }
}

你试图await调用.Start()Task返回的ToMp4() 删除对Start()调用并等待返回的Task本身:

await FFmpeg.FFmpeg.Conversions.FromSnippet.ToMp4(inputFileName, outputFileName);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM