37、探索文件操作与并发编程

探索文件操作与并发编程

1. 文件操作与字符串编码

在文件操作方面,我们可以使用Cocoa来访问文件及其元数据。同时,也对字符串编码有了一定了解,以及Cocoa是如何处理它们的。另外,还看到了一个由Cocoa绑定驱动的图形用户界面(GUI)示例。除了打开文件的菜单项外,这里的所有操作都是通过绑定完成的,包括在弹出列表中设置值,这最终会导致文本字段重新加载。这种交互比较复杂,在熟悉之前,可能不太容易理解其工作原理,因为部分操作是在幕后通过Cocoa绑定完成的。

2. 并发编程的挑战与必要性

在软件开发中,编写能够同时执行多项任务的软件是一项重大挑战。过去,计算机通过快速切换任务来营造并发的假象,而如今的计算机通常拥有多个计算核心,能够真正同时执行多项任务。然而,即使计算机硬件和操作系统具备多核处理能力,编写能够有效利用多核的应用程序软件仍然具有技术挑战性。在大多数开发环境中,默认假设代码是按顺序执行的,将任务拆分以实现并发执行是一项艰巨的任务。

当应用程序无法响应用户操作时,OS X会出现旋转磁盘光标(有时称为“死亡旋转沙滩球”),这通常在点击按钮或菜单项触发耗时操作后出现。OS X检测到进程未处理输入事件时,会显示该光标以提醒用户。当应用程序完全停止响应并即将崩溃(或被用户终止)时,也会出现这种情况。因此,为了避免用户看到旋转磁盘光标并确保用户能够继续与应用程序交互,我们需要让长时间运行的操作在后台执行,同时让应用程序正常处理用户输入事件。

3. 示例应用:SlowWorker

为了演示并发选项,我们创建一个名为SlowWorker的简单应用程序,该应用程序模拟执行一些长时间运行的操作,如从服务器获取数据和进行计

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值