gpt4 book ai didi

linux - 在 Vala 中是否有某种等同于 .NET 的 BackgroundWorker 的东西?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:59:12 25 4
gpt4 key购买 nike

我正在尝试学习 Vala,所以我正在制作一个小型 GUI 应用程序。我之前的主要语言是 C#,所以一切进展顺利。

但是,我现在碰壁了。我需要连接到外部网络服务器(使用 GIO),它不会立即回复我的客户端。这会使 GUI 在程序连接并执行其操作时卡住。

在 C# 中,我可能会在这种情况下使用 BackgroundWorker。不过,我似乎无法为 Vala 找到类似的东西。

基本上,我有一个 MainWindow.vala,我在其中连接了一个用于单击某个按钮的信号到一个正在创建 ProcessingDialog.vala 的新实例的方法。这显示了主窗口上的一个对话框,我希望用户在程序执行工作(连接到服务器、通信)时看到它。

我有哪些替代方案可以使这种情况发挥作用?

最佳答案

GIO 提供异步方法,参见异步客户端示例:https://live.gnome.org/Vala/GIONetworkingSample

如果您不知道 Vala 中的异步方法,请尝试查看教程:https://live.gnome.org/Vala/Tutorial#Asynchronous_Methods

关于linux - 在 Vala 中是否有某种等同于 .NET 的 BackgroundWorker 的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10060965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com