多线程及其它

本文介绍了POSIX线程库的使用方法,包括线程创建、等待、信号量的创建与销毁等。同时讨论了在不同线程中管理释放池的方法,并指出了NSTimer在特定场景下的局限性。此外还探讨了Notification的执行机制及如何实现跨线程的通知。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这儿说的多线程是指posix thread库。pthread_create创建线程,pthread_join等待线程结束。MPCreateSemaphore创建信号 量,MPSignalSemaphore发送信号量,MPWaitOnSemaphore等待某个信号量之后再继续,MPDeleteSemaphore 销毁信号量。

可以在单独的线程中建立NSAutoreleasePool管理线程的释放池,甚至某个单独的操作本身也可以在单独的释放池中。

NSTimer不知道为什么在modal dialog中不好用。

Notification会被post它的线程执行,而不是注册observe的线程,要想通知另一个线程执行某项功能,应使用performSelectorOnMainThread,或者使用cocoa的port和conection机制。

sheet功能可以不使用modal,它的父窗口就不会阻塞,但父窗口上的无法接受鼠标和键盘消息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值