自欺欺人的使用 NSTimer 销毁 "Demo地址" 1.NSTimer是要加到runloop中才会起作用。 常见的创建timer方式 第一种缺陷如果当前线程就是主线程,也就是UI线程时,某些UI事件,比如UIScrollView的拖动操作,会将Run Loop切换成 模式,在这个过程中,默认的 ...
分类:
其他好文 时间:
2018-04-16 23:48:42
阅读次数:
1638
- (void)viewDidLoad { [super viewDidLoad]; // 通知 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notification:) name:nil obj... ...
分类:
移动开发 时间:
2018-04-13 17:52:48
阅读次数:
228
基础与控制原语 读写锁 与互斥量类似,但读写锁允许更高的并行性。其特性为:写独占,读共享。 读写锁状态: 一把读写锁具备三种状态: 1. 读模式下加锁状态 (读锁) 2. 写模式下加锁状态 (写锁) 3. 不加锁状态 读写锁特性: 读写锁是"写模式加锁"时, 解锁前,所有对该锁加锁的线程都会被阻塞。... ...
分类:
编程语言 时间:
2018-04-05 20:05:25
阅读次数:
210
阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或者当队列是满时,往队列里添加元素的操作会被阻塞。试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其他的线程往空的队列插入新的元素。同样,试图往已满的阻塞队列中添加新元素的线程同样也会被阻塞,直到其他的线程使队列重新变 ...
分类:
编程语言 时间:
2018-04-05 14:25:39
阅读次数:
189
这里讲述的是页面实现多个定时器(计时器)时选用NSTimer还是GCD?(干货不湿)的文章,具体方法请看介绍 定时器在我们每个人做的iOS项目里面必不可少,如登录页面倒计时、支付期限倒计时等等,一般来说使用NSTimer创建定时器: + (NSTimer *)timerWithTimeInterva ...
分类:
其他好文 时间:
2018-04-02 18:08:28
阅读次数:
218
原文:https://www.shiyanlou.com/questions/2460 1 . 什么是可重入锁 锁的概念就不用多解释了,当某个线程A已经持有了一个锁,当线程B尝试进入被这个锁保护的代码段的时候.就会被阻塞.而锁的操作粒度是”线程”,而不是调用(至于为什么要这样,下面解释).同一个线程 ...
分类:
其他好文 时间:
2018-03-27 16:44:44
阅读次数:
144
三者都是结束/终止进程运行。 1.SIGINT SIGTERM区别 前者与字符ctrl+c关联,后者没有任何控制字符关联。 前者只能结束前台进程,后者则不是。 2.SIGTERM SIGKILL的区别 前者可以被阻塞、处理和忽略,但是后者不可以。KILL命令的默认不带参数发送的信号就是SIGTERM ...
分类:
系统相关 时间:
2018-03-25 20:50:10
阅读次数:
717
10 避免活跃性 在安全性与活跃性之间通常存在着某种制衡。例如加锁导致死锁,或者使用线程池和信号量来限制对资源的使用,但这些被限制的行为可能会导致资源死锁。、 10.1 死锁 当一个线程永远地持有一个锁,并且其他线程都尝试获得这个锁时,那么它们将永远被阻塞。 10.1.1 锁顺序死锁 如果用固定的顺... ...
分类:
其他好文 时间:
2018-03-10 13:58:31
阅读次数:
137
slowlog (阅读原文) 此命令用于读取和重置redis慢请求日志 redis slow log概述 redis的slow log记录了那些执行时间超过规定时长的请求。执行时间不包括I/O操作(比如与客户端进行网络通信等),只是命令的实际执行时间(期间线程会被阻塞,无法服务于其它请求)。 有两个 ...
分类:
其他好文 时间:
2018-03-08 23:02:59
阅读次数:
455
1、MySQL数据库当出现慢查询,是比较危险的,一旦有其他的DDL操作,可能会造成整个数据库的等待可以分以下几种情况:当表是MyiSAM表,对表有慢查询,不阻塞Select,对该表的其他DML,DDL操作都会被阻塞,比如出现Wating for table level lock,数据库中一定不能还存在MyiSAM表当表是Innodb表,当表上有慢查询,不阻塞Select 和DML,其他的DDL操作
分类:
数据库 时间:
2018-03-08 19:38:07
阅读次数:
183