【发布时间】:2012-07-04 18:59:50
【问题描述】:
我知道在单独的线程中运行任何类型的 GUI 小部件都是不好的。对于消息,这可以通过向主线程发出信号来克服。但是,如果线程需要用户输入,如何将答案返回给线程,以及该线程如何等待该答案?
我的特殊情况是一个使用来自 libssh 的 sftp 的应用程序。在连接和认证期间,用户可能需要回答一个或多个问题。但出于性能原因,所有 SSH/SFTP 内容都必须在单独的线程中运行。
【问题讨论】:
-
有什么原因在启动线程之前无法获取用户的凭据?
-
对于简单的密码身份验证就足够了,但 SSH 身份验证可能是交互式的,这意味着服务器会问你问题,你提供答案,然后服务器可能会再次提出新问题,等等。