在开发过程中遇到电脑休眠网络断掉的问题,记录下来以便以后查阅。Mac系统如果设置了休眠,一段时间没有操作电脑,系统就会进入休眠模式,这是为了节能,延长电池的使用时间。但是如果我们开发的软件需要一直依赖网络,则不能让系统进入休眠模式。具体代码:

#pragma mark - 防止系统休眠
- (void)preventSystemSleep {// kIOPMAssertionTypeNoDisplaySleep prevents display sleep,// kIOPMAssertionTypeNoIdleSleep prevents idle sleep// reasonForActivity is a descriptive string used by the system whenever it needs// to tell the user why the system is not sleeping. For example,// "Mail Compacting Mailboxes" would be a useful string.//  NOTE: IOPMAssertionCreateWithName limits the string to 128 characters.CFStringRef reasonForActivity= CFSTR("Describe Activity Type");IOPMAssertionID assertionID;IOReturn success = IOPMAssertionCreateWithName(kIOPMAssertionTypeNoDisplaySleep,kIOPMAssertionLevelOn, reasonForActivity, &assertionID);if (success == kIOReturnSuccess){// Add the work you need to do without// the system sleeping here.//        success = IOPMAssertionRelease(assertionID);// The system will be able to sleep again.}}

只要调用preventSystemSleep这个方法,就可以使你的App在运行期间系统不会进入休眠模式,从而保障你的App顺利运行,不会出现断网等各种各样的问题。

Mac开发之防止系统进入休眠模式相关推荐

  1. win7系统没有计算机睡眠状态,win7旗舰版系统休眠模式和睡眠模式的区别

    大家都知道win7旗舰版系统有休眠模式和睡眠模式,但大多人不知道具体是什么意思,更不了解电脑休眠模式和睡眠模式有什么不同,误以为作用是相同的,两者的功能以及如何唤醒电脑的方式是完全不同的.通过开始菜单 ...

  2. 怎么让计算机休眠不wifi,win7系统怎么设置休眠模式无线wifi不断网

    设置休眠模式可以延长硬件寿命消耗,也能很好的节能,但有时候会下载某些大资源时,系统进入休眠模式后无线wifi网络也会随着断网,正在下载的资源也会停止.那么你知道win7系统怎么设置休眠模式无线wifi ...

  3. Mac开发之重写NSSlider(比酷狗的播放进度条好看)

    Mac开发如果觉得系统自带Slider不好看,可以通过重绘让自己软件的Slider变得好看一点.与iOS开发不同的是,Mac开发控件重绘没有那么直接,但也不算复杂.下面说一下怎么通过继承NSSlide ...

  4. Linux 休眠,挂起(待机),关机等几个命令的区别及如何实现;如何启用Ubuntu的休眠模式...

    这里对linux 的几个命令整理下,有:休眠,挂起,待机,关机等几个命令的区别及如何实现. 休眠是一种更加省电的模式,它将内存中的数据保存于硬盘中,所有设备都停止工作.当再次使用时需按开关机键,机器将 ...

  5. 如何启用Ubuntu的休眠模式

    如何启用Ubuntu的休眠模式 1. 写在前面 2. 检查Ubuntu休眠模式是否正常 3. 重新启用休眠 1. 写在前面 下文对应ubuntu14.04的方法同样适用于ubuntu 16.04 LT ...

  6. 服务器系统开启休眠,Ubuntu系统启动休眠及无法唤醒问题的解决

    大家都知道 Windows 有休眠模式,其实 Ubuntu 也有.休眠模式简单来说,就是可以在用户暂时离开时将内存中的所有内容都写入到硬盘当中,当用户下次开机时,就可以直接启动到上次保存的时间状态. ...

  7. Android开发笔记(一百六十)休眠模式下的定时器控制

    定时器AlarmManager常常用于需要周期性处理的场合,比如闹钟提醒.任务轮询等等.并且定时器来源于系统服务,即使App已经不在运行了,也能收到定时器发出的广播而被唤醒.似此回光返照的神技,便遭到 ...

  8. 【MSP430G2553】图形化开发笔记(2) 系统时钟和低功耗模式

    目录 系统时钟概述 BCS+模块单元的基本构造 时钟-概览 介绍 Basic User 模式 Power User 模式 1. 数控振荡器 DCO 2. 出厂预校正频率 3. 低频振荡器 VLO 4. ...

  9. 三级分销软件开发技术分销系统模式

    三级分销系统开发问老何,三级分销系统开发.三级分销模式开发等.说分销之前得先聊聊它的前身,分销本身是不发力的,各色平台,如淘宝天猫在一七年一八年无不利用者移动社交分享的力量.分享功能是指移动社交网的核 ...

最新文章

  1. DFS产生的ID=13562事件
  2. 3位格雷码的顺序编码_绝对值编码器当中的格雷码
  3. 在AWS上搭建NEO私有链(1)
  4. “看起来你每天都要做好多事,你有时间吗?”
  5. linux运维选择题,初学Linux练习题
  6. 240多个jquery插件
  7. 损失函数与优化器理解+【PyTorch】在反向传播前为什么要手动将梯度清零?optimizer.zero_grad()
  8. 应用开发专家一席谈:开发低代码,上手低门槛,AppCube使能Citizen Developer,人人都是开发者
  9. HTML5公式插件,在HTML5中使用MathML数学公式
  10. java list对象按照某个属性去重
  11. c#利用SWIG调用c++dll学习总结【转】
  12. WPF获取原始控件样式。
  13. JAVA/JNI的jstring转换为char*
  14. 教师计算机培训心得体会范文,教师计算机教育培训学习心得体会
  15. Matplotlib颜色设置
  16. Transformer入门教程(八)时间维度
  17. Centos7.5 系统使用pptpd搭建服务器
  18. Java基础--I/O流知识总结
  19. 解决vscode进行chrome调试时报错:localhost拒绝连接请求
  20. linux下mysql可视化工具安装

热门文章

  1. eclipse完成Android计算器界面开发,并且实现基本的功能(加减乘除、清零)
  2. 计算机之父—冯·诺依曼
  3. 数据库服务器启动失败
  4. 林志玲李小璐刘亦菲 曝娱圈假胸上位的女星
  5. 安卓手机用什么无线充电宝?什么无线充电宝最好
  6. 1136:密码翻译(C++)
  7. shell编程基础笔记
  8. HTML_06_字符实体
  9. ad10捕捉pad中点_AD转投PADS门下新手走线及捕捉焊盘中心问题
  10. 爆笑:IT人士群聚喝酒的讲究 [笑话]