首页 文章 精选 留言 我的

精选列表

搜索[消息通知],共10000篇文章
优秀的个人博客,低调大师

iOS - OC RunLoop 运行循环/消息循环

1、RunLoop 1)运行循环: 运行循环在 iOS 开发中几乎不用,但是概念的理解却非常重要。 同一个方法中的代码一般都在同一个运行循环中执行,运行循环监听 UI 界面的修改事件,待本次运行循环结束时,统一将界面的修改渲染出来。 点击事件触发结束后立即结束本次运行循环。 作用: 保证程序不退出。 负责监听所有事件,例如:手势触摸,时钟触发,网络加载数据完成等。 特性: 没有事件时,会休眠(省电),一旦监听到事件,会立即响应。 每一个线程都有一个 runloop,但是只有主线程的 runloop 会默认启动。子线程的运行循环默认是不启动的。 2)子线程运行循环: 子线程的运行循环默认是不启动的。 启动运行循环后,如果不停止运行循环,不会执行后续的任何代码,会形成一个死循环。 一旦停止了运行循环,后续代码能够执行,执行完毕后,线程被自动销毁。 3)响应者链条事件监听过程: 2、运行循环的使用 2.1 时钟调度 /* - (void)addTimer:(NSTimer *)timer forMode:(NSString *)mode; NSDefaultRunLoopMode: 时钟,网络。 发生用户交互的时候,时钟会被暂停 NSRunLoopCommonModes: 用户交互,响应级别高。 发生用户交互的时候,时钟仍然会触发,如果时钟触发方法非常耗时, 使用此方式时用户操作会造成非常严重的卡顿。 */ 以 NSRunLoopCommonModes 方式创建 // 调度时钟 self.timer = [NSTimer timerWithTimeInterval:1.0 target:self selector:@selector(updateTimer) userInfo:nil repeats:YES]; // 将时钟以 NSRunLoopCommonModes 模式添加到运行循环 [[NSRunLoop currentRunLoop] addTimer:self.timer forMode:NSRunLoopCommonModes]; 以 NSDefaultRunLoopMode 方式创建 // 调度时钟 /* 默认将时钟以 NSDefaultRunLoopMode 模式添加到运行循环 */ self.timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateTimer) userInfo:nil repeats:YES]; 子线程运行循环 dispatch_async(dispatch_get_global_queue(0, 0), ^{ // 在子线程开启时钟,由于子线程的运行循环没有启动,所以没法监听时钟事件 self.timer = [NSTimer timerWithTimeInterval:1.0 target:self selector:@selector(updateTimer) userInfo:nil repeats:YES]; [[NSRunLoop currentRunLoop] addTimer:self.timer forMode:NSDefaultRunLoopMode]; // 启动子线程的运行循环,这句代码就是一个死循环!如果不停止运行循环,不会执行后续的任何代码 CFRunLoopRun(); // 停止子线程运行循环之前,不会执行添加到此处的任何代码 }); // 运行循环执行操作方法 - (void)updateTimer { static int num = 0; NSLog(@"%d %@", num++, [NSThread currentThread]); // 满足条件后,停止当前的运行循环 if (num == 8) { // 一旦停止了运行循环,后续代码能够执行,执行完毕后,线程被自动销毁 CFRunLoopStop(CFRunLoopGetCurrent()); } }

优秀的个人博客,低调大师

FydeOS v13 发布通知 & FydeOS for You 家族再添一员

FydeOS v13 着实让大家久等啦! 在这一次里程碑更新中,最值得一提的有: Chromium 浏览器升级至 92.0.4515.*;Chromium OS 平台更新到了 13982.75.13.*。同步了上游所有关于浏览器和操作系统平台的新特性: 在平板模式下悬浮的输入框可以随时查看剪贴板内的内容,即便是文字、图片或者链接都可以直观呈现,方便你选择正确的项目粘贴至输入框内。 在「关于 FydeOS」中添加了「诊断」程序,方便你密切关注设备的运行状况以及在寻求帮助的时候提供更多有效的信息。 优化过的「虚拟桌面」功能帮助你更好地管理每个虚拟桌面的属性;每个应用程序可以分别配置在指定的或者所有桌面打开;虚拟桌面的相关设置在系统重启之后亦会保留。 重新添加对「本地账户」的支持:你可以建立一个不依赖任何账户网络服务提供商的 FydeOS 本地账号,但与此同时也无法享受任何与账号和同步相关的服务。 在输入文字的时候按下❖(win) +shift+空格键即可呼出全新增加的 emoji 面板功能,方便你随时输入颜文字。 于此同时,我们也修复了一些在上一个版本中令人困扰的已知问题,具体来说: 修复了在某些设备上连接蓝牙音频和输入设备工作不稳定的问题 修复了在某些设备上无法播放 DRM 流媒体内容的问题 修复了在某些设备上外放音量过小的问题 FydeOS ❤️ Chromebook Pixel 2015 随着这次 v13 版本的更新,FydeOS for You 家族也迎来了一名新成员——Chromebook Pixel 2015! 虽然它已被官方结束了技术支持,Google Chromebook Pixel 2015 依旧是一台让人惊叹不已的笔记本电脑——极简干练的外形线条,不加过多修饰的银色 A 面,以及那标志性的彩虹呼吸灯,透过这些经典的设计元素,给人一种超越时间的永恒感。在我们看来,这样的经典不应被时间遗忘。 正是如此,通过这段时间的潜心打磨,我们自豪地宣布推出适配 Chromebook Pixel 2015 的 FydeOS for You 版本,让这台机器重获新生。相信体验不会令你失望。 我们坚信,FydeOS 将逐渐成为一个更加开放的平台,你想要的所有程序,都能在 FydeOS 上使用。千里之行,这是我们的第一步,只愿今后的每一步都有你相伴。

优秀的个人博客,低调大师

重要通知 | 2018年阿里活水计划课题申报3月12日截止

“问渠哪得清如许,为有源头活水来”。在数字经济快速创新、快速迭代的今天,数字经济思想的活水从何而来? 2009年,阿里研究院启动了面向青年学者的活水计划,旨在搭建“实践者+研究者”在线对接平台,发掘阿里案例和数据的价值,支持优秀青年研究者成长,推动中国数字经济研究走向世界、引领世界! 10年来,活水计划已经连接了300多名学者、200多个项目。通过合作,许多年轻学者更加了解数字经济,产生了大量的基于数字经济理论创新成果,这些都为数字经济的发展提供了源动力。 2018年阿里研究院将聚焦数字经济,通过“三个开放”,推进活水计划。开放一批项目,研究领域包括但不限于:数字经济、农村脱贫、产业升级与消费升级、数据、创新和治理、全球化与eWTP、医疗健康。开放一些案例和数据,通过实地调研和少量资助,共同推动项目实施。开放一批活水学者名额,吸引国内外

优秀的个人博客,低调大师

重要通知 | WanaCrypt0r 2.0及Onion等勒索软件安全建议

5月12日晚,WanaCrypt0r 2.0勒索软件在全球爆发(简称 WCry2.0)。 在无需用户任何操作的情况下,Wcry2.0即可扫描开放445文件共享端口的Windows机器,从而植入恶意程序。 截至今晨,全球74个国家的7万多台电脑遭到感染。 全球受感染范围(5月13日 8:00) 来源:Melwaretech Twitter 阿里云在4月15日发布过关于Windows系统 SMB/RDP远程命令执行漏洞的高危预警。 复制链接查看SMB漏洞预警https://m.aliyun.com/bbs/read/312815.html 此次WCry2.0事件爆发后,阿里云第一时间发布公告。当前,阿里云已经默认关闭开放455端口,且默认安装Windows官方补丁。 为了确保您在阿里云上的业务安全,建议用户及时对各自业务的服务器进行检查: 请检查服务器的账号密码,如果密码简单,请立即修改为强口令密码并定期更新密码; 不要将高危的服务端口开放到外网,例如:3389、445、139端口,仅开放必要的业务服务端口,如果存在此类情况,您可以配置安全组策略屏蔽高危端口; 如果您重新购买使用新的ECS,强烈建议做好快照,然后安装杀毒软件,例如: 微软MSE,企业版卡巴斯基,诺顿等; 请确保安装好最新Windows补丁(MS17-010补丁),阿里云对4月25日之后的新购用户已默认安装该补丁。 转自阿里云安全

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册