「java手动创建单线程」Java单线程
本篇文章给大家谈谈java手动创建单线程,以及Java单线程对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java怎么动态的创建线程
- 2、java创建线程的方式有几种?
- 3、java,一个程序建立1000个线程,每一个线程加1到一个变量sum。
- 4、什么是Java单线程啊?
- 5、java创建线程池有哪些
- 6、Java 如何创建100个Thread 线程
java怎么动态的创建线程
JAVA中,线程就是动态的
最简单地,这样就可以
new Thread(){
public void run(){
System.out.println(new java.util.Date());
try{Thread.sleep(1000); }catch(InterruptedException ex){}
}
}.start();
~
java创建线程的方式有几种?
java创建线程的方式有三种\x0d\x0a第一种是继承Thread类 实现方法run() 不可以抛异常 无返回值\x0d\x0a第二种是实现Runnable接口 实现方法run() 不可以抛异常 无返回值\x0d\x0a第三种是实现Callable接口,接口中要覆盖的方法是 public call() 注意:此方法可以抛异常,而前两种不能 而且此方法可以有返回值\x0d\x0a\x0d\x0a第三种如何运行呢 Callable接口在util.concurrent包中,由线程池提交\x0d\x0aimport java.util.concurrent.*;\x0d\x0aExecutorService e = Executors.newFixedThreadPool(10); 参数表示最多可以运行几个线程\x0d\x0ae.submit(); 这个里面参数传 实现Callable接口那个类的对象
java,一个程序建立1000个线程,每一个线程加1到一个变量sum。
1、程序建立1000个线程,有可能造成系统创建大量线程而导致消耗完系统内存,还会增加创建和销毁线程上所花的时间以及系统资源的开销
2、在创建线程数多的情况下,可以考虑使用线程池
以下是Java自带的几种线程池:
(1)、newFixedThreadPool 创建一个指定工作线程数量的线程池。
每当提交一个任务就创建一个工作线程,如果工作线程数量达到线程池初始的最大数,则将提交的任务存入到池队列中。
(2)、newCachedThreadPool 创建一个可缓存的线程池。
这种类型的线程池特点是:
1).工作线程的创建数量几乎没有限制(其实也有限制的,数目为Interger. MAX_VALUE), 这样可灵活的往线程池中添加线程。
2).如果长时间没有往线程池中提交任务,即如果工作线程空闲了指定的时间(默认为1分钟),则该工作线程将自动终止。终止后,如果你又提交了新的任务,则线程池重新创建一个工作线程。
(3)、newSingleThreadExecutor 创建一个单线程化的Executor,即只创建唯一的工作者线程来执行任务,如果这个线程异常结束,会有另一个取代它,保证顺序执行(我觉得这点是它的特色)。
单工作线程最大的特点是可保证顺序地执行各个任务,并且在任意给定的时间不会有多个线程是活动的 。
(4)、newScheduleThreadPool 创建一个定长的线程池,而且支持定时的以及周期性的任务执行,类似于Timer。
3、示例代码
package test;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class ThreadPoolExecutorTest {
public static void main(String[] args) {
ExecutorService cachedThreadPool = Executors.newCachedThreadPool();
for (int i = 0; i 1000; i++) {
cachedThreadPool.execute(new Runnable() {
public void run() {
//在这里执行你需要的功能
}
});
}
}
}
什么是Java单线程啊?
所谓单线程是指
类或者类其中的某些方法或者代码块只能“同时”被一个线程执行。
当有多个线程同时执行到此处时,只有当正在执行的线程运行完毕,释放锁之后,其它线程才可以继续执行。
在集合框架(Collection Frame)中有很多java基础类,都是单线程的。
如Vector、HashTable。等
一般在java中非常典型的单线程模式就是在IO操作中出现。
java创建线程池有哪些
ava通过Executors提供四种线程池,分别为:
newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。
newFixedThreadPool
创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。
newScheduledThreadPool
创建一个定长线程池,支持定时及周期性任务执行。
newSingleThreadExecutor
创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,保证所有任务按照指定顺序(FIFO,
LIFO,
优先级)执行。
Java 如何创建100个Thread 线程
有两种创建线程的方法:一是实现runnable接口,然后将它传递给thread的构造函数,创建一个thread对象;二是直接继承thread类。
关于java手动创建单线程和Java单线程的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。