1.停止线程 停止线程不像停止一个循环break一样干脆。 停止一个线程意味着在线程处理完任务之前停掉正在做的操作,也就是放弃当前的操作。虽然看起来简单,但是必须做好正确的防范措施,以便达到预期的效果。停止一个线程可以用Thread.stop(),但最好不要用它。虽然它确实可以停止一个正在运行的线程 ...
分类:
编程语言 时间:
2018-12-07 23:29:36
阅读次数:
353
1引言 2 创建线程 2.1 函数的方式创建线程 2.2 类的方式创建线程 3 Thread类的常用属性和方法 3.1 守护线程:Deamon 3.2 join()方法 4 线程间的同步机制 4.1 互斥锁:Lock 4.2 递归锁:RLock 4.3 Condition 4.4 信号量:Semap ...
分类:
编程语言 时间:
2018-12-07 15:03:23
阅读次数:
211
目录 Android限制只能在主线程中进行UI访问 Thread的实现 Android Thread 的构造方法 Android Thread 的start()方法 如何在我们自己的代码中去检测当前Thread是不是UI线程呢? Android限制只能在主线程中进行UI访问 我们知道,Android ...
分类:
移动开发 时间:
2018-12-07 14:49:43
阅读次数:
212
什么是ANR ANR:Application Not Responding,即应用程序无响应。 在Android中,ActivityManagerService(简称AMS)和WindowManagerService(简称WMS)会监测应用程序的响应时间,如果应用程序主线程(即UI线程)在超时时间内 ...
分类:
移动开发 时间:
2018-12-04 20:07:05
阅读次数:
248
无法改变风向,可以调整风帆;无法左右天气,可以调整心情。如果事情无法改变,那就去改变观念。 ...
分类:
编程语言 时间:
2018-12-03 16:33:04
阅读次数:
205
管道的使用介绍 现在要计算 1-N 的各个数的阶乘,并且把各个数的阶乘放入到 map 中。最后显示出来。要求使用 goroutine 完成 问题1:使用goroutine时,主线程执行结束,即使协程没有执行完毕也会结束,顾map没有结果 问题2:fatal error:并发写 排查方法:在运行某个程 ...
分类:
其他好文 时间:
2018-12-03 01:17:12
阅读次数:
257
虽然项目用不上,先备份吧,控制多线程执行顺序有两种方法 1.通过join方法保证多线程的顺序性的特性 join:让主线程等待子线程结束后才能继续执行 2.ExcutorService executor = Excutors.newSingleTheadExcutor():FIFO ...
分类:
编程语言 时间:
2018-12-01 15:15:33
阅读次数:
153
主线程的执行过程就是一个 tick,而所有的异步结果都是通过 “任务队列” 来调度被调度。 消息队列中存放的是一个个的任务(task)。 规范中规定 task 分为两大类,分别是 macro task 和 micro task,并且每个 macro task 结束后,都要清空所有的 micro ta ...
分类:
其他好文 时间:
2018-11-29 15:24:16
阅读次数:
168
产品需求产品经理需要导出一个页面的所有的信息到EXCEL文件。需求分析对于excel导出,是一个很常见的需求。最常见的解决方案就是使用poi直接同步导出一个excel文件。客户体验&服务性能客户体验如果导出的文件比较大,比如几十万条数据,同步导出页面就会卡主,用户无法进行其他操作。服务性能导出的时候,任务比较耗时就会阻塞主线程。如果导出的服务是暴露给外部(前后端分离),这种大量的数据传输十
分类:
编程语言 时间:
2018-11-26 23:08:11
阅读次数:
443