LibGit2Sharp 反应迟钝

LibGit2Sharp Unresponsiveness

我一直在四处寻找,我正在寻找一种方法来拉动我的 git 文件,但又不会影响我的启动器的响应速度。我已经完成了异步阅读,我不确定它是否可能。 现在我有

private void Install() {
       Repository.Clone("Myrepourl", "Localinstall");
}

要提取的信息量相当大,因此我想在 Rep 从我共有的 4 个回购中提取信息时向他们提供更新。浏览器

private void Install() {
       Repository.Clone("url", "local");
       installstatus.Text = "Pulling next repo";
       Repository.Clone("url", "local");
}

这可以 运行 异步还是只能同步工作?

运行 TaskTransferProgress 事件中的 Clone 是我处理它的方式。

基于任务的控制台示例:

class MainClass
{
    public static void Main(string[] args)
    {
        Task.Run(() =>
        {
            Repository.Clone("https://github.com/sushihangover/SVGKit.Binding", Path.Combine(Path.GetTempPath(), "foobar"),
                new CloneOptions { OnTransferProgress = MainClass.TransferProgress });
        }).Wait();
    }

    public static bool TransferProgress(TransferProgress progress)
    {
        Console.WriteLine($"Objects: {progress.ReceivedObjects} of {progress.TotalObjects}, Bytes: {progress.ReceivedBytes}");
        return true;
    }
}