gpt4 book ai didi

objective-c - Cocoa应用程序界面从程序代码中随机 "disconnecting"

转载 作者:行者123 更新时间:2023-12-03 16:55:49 37 4
gpt4 key购买 nike

我有一个处理图像的多线程 Cocoa 应用程序。该程序有一个进度条和一些文本,显示该过程的进度。这一切都很好。然而,有时界面会卡住并且所有内容都会停止更新。进度条停止移动,百分比计数器中的文本停止更新。然而,实际过程仍然有效!我有一个 NSBeep() 在程序完成时触发,即使 UI 不再更新,我仍然听到这个消息。就好像 UI 与代码断开了连接。

另一个奇怪的问题是,有时当用户想要选择文件时打开的 NSOpenPanel 只是一个白色的空白。我在主线程中声明了 NSOpenPanel (我正在使用 [NSOpenPanel openPanel]),这有帮助(我一开始尝试保留它,但这不起作用)。我不知道这是否相关,但任何想法将不胜感激!

我在 Mac OS X 10.5.8 上使用 Xcode 3.1.1 (GCC 4.2)。

最佳答案

您正在尝试从其他线程操作 UI。正如文档中所述,AppKit 通常不是线程安全的,您应该在主线程上与 GUI 进行交互。请参阅-performSelectorOnMainThread:withObject:waitUntilDone: .

关于objective-c - Cocoa应用程序界面从程序代码中随机 "disconnecting",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3969708/

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