本案例在于实现文件的多线程断点下载,即文件在下载一部分中断后,可继续接着已有进度下载,并通过进度条显示进度。也就是说在文件开始下载的同时,自动创建每个线程的下载进度的本地文件,下载中断后,重新进入应用点击下载,程序检查有没有本地文件的存在,若存在,获取本地文件中的下载进度,继续进行下载,当下载完成后,自动删除本地文件。
1. 定义布局文件需要用到的属性名及内容
2. 设置用户的Inte...
分类:
移动开发 时间:
2014-06-05 12:32:32
阅读次数:
356
关于java.util.concurrent.atomic.*包下面的线程问题...
分类:
编程语言 时间:
2014-06-05 12:24:30
阅读次数:
212
总结下python中线程调度机制.
对于线程调度机制而言,同操作系统的进程调度一样,最关键是要解决两个问题:
1.在何时选择挂起当前线程,并选择处于等待的先一个线程呢?
2.在众多等待的线程中,选择哪一个作为激活线程呢?
在python多线程机制中,这个两个问题是有两个层次解决的。
如,进程间的切换,当发生了时钟中断,操作系统响应时钟中断,并在这个时候开始进程的调...
分类:
编程语言 时间:
2014-06-05 10:07:35
阅读次数:
314
根据java的多线程下载,我们将进行对java的多线程下载移植到android客户端。
java多线程在客户端的移植步骤
1.添加用户权限:发送网络请求,sd卡的读写
2.点击按钮触发访问网络请求的时间,必须开启一个线程,在线程中去启动主线程中不能发送网络请求
new Thread(){
@Override
public void run() {
}
}.start();...
分类:
移动开发 时间:
2014-06-05 05:10:09
阅读次数:
280
1.Collection
和 Collections
的区别。
Collection
是集合类的上级接口,继承于他的接口主要有
Set 和
List.
Collections 是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。
2.HashMap
和 Hashtable
的区别。
HashMap 是...
分类:
编程语言 时间:
2014-06-05 01:25:20
阅读次数:
296
java多线程下载
一、简介
线程可以理解为下载的通道,一个线程就是一个文件的下载通道,多线程也就是同时开起好几个下载通道.当服务器提供下载服务时,使用下载者是共享带宽的,在优先级相同的情况下,总服务器会对总下载线程进行平均分配。不难理解,如果你线程多的话,那下载的越快。现流行的下载软件都支持多线程。
注意:实现多线程的条件是服务器支持单一IP多线程下载,如果不支持的话,很有可能封IP或者是...
分类:
编程语言 时间:
2014-06-04 23:31:04
阅读次数:
390
progressBar说明
在某些操作的进度中的可视指示器,为用户呈现操作的进度,还它有一个次要的进度条,用来显示中间进度,如在流媒体播放的缓冲区的进度。一个进度条也可不确定其进度。在不确定模式下,进度条显示循环动画。这种模式常用于应用程序使用任务的长度是未知的。
XML重要属性
android:progressBarStyle:默认进度条样式
android:progressBar...
分类:
移动开发 时间:
2014-06-04 23:25:36
阅读次数:
310
红色字体部分为关键,其他都是浮云。。
/**
*
* 由于该Service用于多线程下载文件,需要确保原子性,一直处理一个DownLoadFilePO对象
*
* detailed comment
* @see
* @since 1.0
*/
public class DownLoadService extends Service {
p...
分类:
其他好文 时间:
2014-06-04 22:03:23
阅读次数:
423
对象的方法中一旦加入synchronized修饰,则任何时刻只能有一个线程访问synchronized修饰的方法。假设有个数据对象拥有写方法与读方法,多线程环境中要想保证数据的安全,需对该对象的读写方法都要加入 synchronized同步块。这样任何线程在写入时,其它线程无法读取与改变数据;如果有线程在读取时,其他线程也无法读取或写入。这种方式在写入操作远大于读操作时,问题不大,而当读取远远大于...
分类:
编程语言 时间:
2014-06-04 21:51:52
阅读次数:
377
1、集合
当向集合Set中增加对象时,首先集合计算要增加对象的hashcode,根据该值得到一个位置用来存放当前的对象,当在该位置没有一个对象存在的时候,集合set认为该对象在集合中不存在,直接增加进去。如果在该位置有一个对象存在,接着将准备增加到集合中的的对象与该位置上的对象进行equals比较,若返回false,在进行一次散列,将该对象放到散列后计算出的新地址。若返回true,不会再将该对象增加到集合中
2、当重写equals方法时,必须要重写hashcode方法
如果一个类的两个对象,使用equa...
分类:
编程语言 时间:
2014-06-04 21:49:17
阅读次数:
313