我猜測我需要做線程,但在我教自己一些不好的做法之前,我想確保我正在以這種正確的方式進行。我該如何解決凍結點擊後處理信息的GTK按鈕?
基本上我有一個「聊天」應用程序,可以告訴偵聽或ping通收件人的IP地址:端口(在我目前的情況下只是127.0.0.1:1300)。當我打開我的應用程序兩次(第一個聽,第二個發送ping)時,我選擇一個並告訴它聽(哪個是While語句,只是不斷收聽,直到它收到ping消息),另一個會ping它。它的作品只是桃色!
問題是,當我單擊「偵聽ping」按鈕時,它將進入粘貼的「向下」模式並凍結「視覺」,但它將UDP數據包消息打印到控制檯,因此我知道它並非實際凍結。所以我的問題是我如何做到這一點,所以我可以點擊「收聽」按鈕並讓它「聽」,同時有一個「工作」取消按鈕,以便用戶可以取消該過程,如果它需要太長時間?
讓我們只是說我有一個按鈕,當我點擊那個按鈕時,它有一個永遠while()循環在回調/信號...我怎麼做,所以按鈕不凍結了?它的錯誤導致用戶 – Xenland