讲解等待唤醒机制之前,有必要搞清一个概念——线程之间的通信:多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。通过一定的手段使各个线程能有效的利用资源。而这种手段即——等待唤醒机制。等待唤醒机制所涉及到的方法:wait():等待,将正在执行的线程释..
分类:
编程语言 时间:
2016-06-05 17:14:34
阅读次数:
220
Activity/**实际开发涉及文件上传、下载都不会自己写这些代码,一般会使用第三方库(如xUtils)或Android提供的DownloadManager下载*/public class HttpDownloadActivity extends ListActivity { private Te... ...
分类:
编程语言 时间:
2016-06-05 16:57:21
阅读次数:
453
一、进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开迅雷、Xcode,系统就会分别启动2个进程 通过“活动监视器”可以查看Mac系统中所开启的进程 2.什么是线程 1个进程要想执行任务,必须得有线程(每 ...
分类:
编程语言 时间:
2016-06-05 15:16:29
阅读次数:
157
这周复习了姚嵩老师的软件测试,了解了它的含义、目的与单线程和多线程,多线程与多任务之间的差别。 软件测试使用人工或者自动手段来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。它是帮助识别开发完成的计算机软件的正确度和完全度和质量的软件过程:是SQA的重 ...
分类:
其他好文 时间:
2016-06-05 13:59:20
阅读次数:
144
这周复习了姚嵩老师的软件测试,了解了它的含义、目的与单线程和多线程,多线程与多任务之间的差别。 软件测试使用人工或者自动手段来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。它是帮助识别开发完成的计算机软件的正确度和完全度和质量的软件过程:是SQA的重 ...
分类:
其他好文 时间:
2016-06-05 13:55:32
阅读次数:
120
当析构函数遇到多线程,当一个对象能被多个线程同时看到,那么对象的销毁时机就变得模糊不清了,可能出现多种竞争条件race condition: 在即将析构一个对象时,如何得知此刻是 否有别的线程正在执行该对象的成员函数 如何保证在执行成员函数期间,对象不会在另一个线程被析构 在调用某个对象的成员函数之 ...
分类:
编程语言 时间:
2016-06-05 12:24:00
阅读次数:
206
一.线程的生命周期及五种基本状态
Java线程具有五中基本状态
新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread();
就绪状态(Runnable):当调用线程对象的start()方法(t.start();),线程即进入就绪状态。处于就绪状态的线程,只是说明此线程已经做好了准备,随时等待CPU调度执行,并不是说执行了...
分类:
编程语言 时间:
2016-06-05 11:13:49
阅读次数:
183
为什么需要多线程? 最简单的多线程长啥样? 为什么需要线程池,有什么问题? 实现的主要原理是什么? 带着这几个问题,我们依次展开。 1.为什么需要多线程? 大部分程序毕竟都不是计算密集型的,简单的说,正常情况下,以单线程的模式来写对程序员而言是最舒心的。因为所有的代码都是顺序执行,非常容易理解!函数 ...
分类:
编程语言 时间:
2016-06-05 09:53:16
阅读次数:
373
操作系统的设计,因此可以归结为三点: (1)以多进程形式,允许多个任务同时运行; (2)以多线程形式,允许单个任务分成不同的部分运行; (3)提供协调机制,一方面防止进程之间和线程之间产生冲突,另一方面允许进程之间和线程之间共享资源。 ...
分类:
编程语言 时间:
2016-06-05 01:00:49
阅读次数:
172
程序功能大概就是爬取每个网页中的图片,并根据标题,分文件保存至指定目录,使用threading实现多线程。 主要流程为每访问一个网页,将此网页中的图片链接依次放入队列,根据图片数量依次开启下载线程,传入队列和编号,然后启动线程开始下载,主线程查询当前正在活动的线程数量,当数量为1的时候,即只剩主线程 ...
分类:
编程语言 时间:
2016-06-04 23:41:22
阅读次数:
316