- 浏览: 2288431 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (357)
- J2EE (49)
- JavaScript (40)
- Spring (19)
- Struts (5)
- CSS (8)
- Hibernate (16)
- Java (67)
- DWR (4)
- JSON (3)
- XFIRE (1)
- Tomcat (1)
- Ant (2)
- 设计模式 (2)
- 经典收藏 (2)
- JSP (10)
- Linux (0)
- WebLogic (11)
- myeclipse (13)
- Buffalo (4)
- 文件上传相关 (1)
- oracle (33)
- html (6)
- JSTL (3)
- SVN (2)
- GIT (1)
- 孙卫琴(Java网络编程精解) (1)
- DOM4J (2)
- Swing (1)
- AJAX (1)
- Eclipse (5)
- 日志组件 (3)
- PowerDesigner (1)
- Jquery (22)
- IT技术开发相关网址 (1)
- Nutz (1)
- 其它 (1)
- Velocity (3)
- WebService (1)
- MySql (2)
- Android (1)
- Maven (2)
- Quartz (11)
- Lucene (1)
- springsource (1)
- Junit (1)
- Activiti (0)
最新评论
-
yzlseu:
拼凑,没有营养
Activiti进阶—分配组任务 -
zhangsenhao:
非常赞!代码很清楚
SpringMVC3.0+MyIbatis3.0(分页示例) -
xiamw2000:
分页写得不对,应该是 : order by ${orderNa ...
SpringMVC3.0+MyIbatis3.0(分页示例) -
sheertewtw:
...
SpringMVC:上传与下载 -
kingtoon:
...
XSS之xssprotect
运用场景:多个线程之间要求有顺序的执行
Join有三个重载方法
join() 等待该线程终止
join(long millis) 等待该线程终止的时间最长为 millis 毫秒
join(long millis, int nanos) 等待该线程终止的时间最长为 millis 毫秒 + nanos 纳秒
示例如下:
Join有三个重载方法
join() 等待该线程终止
join(long millis) 等待该线程终止的时间最长为 millis 毫秒
join(long millis, int nanos) 等待该线程终止的时间最长为 millis 毫秒 + nanos 纳秒
示例如下:
public class MyThread extends Thread { @SuppressWarnings("deprecation") @Override public void run() { System.out.println("咫尺天涯的第一个任务启动了。。。"); int i = 0; while(true){ System.out.println("执行第一个任务的次数: " + (++i)); if(i == 5){ System.out.println("第一个任务执行结束,走人..."); break; } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } } }
public class MyRunnable implements Runnable { @SuppressWarnings("deprecation") @Override public void run() { System.out.println("咫尺天涯的第二个任务启动了。。。"); int i = 0; while(true){ System.out.println("执行第二个任务次数: " + (++i)); if(i == 5){ System.out.println("第二个任务执行结束,再见朋友们!"); break; } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } } }
public class Main { public static void main(String[] args) { MyThread mt = new MyThread(); Thread mythread = new Thread(mt,"咫尺天涯(Thread)"); System.out.println("第二个任务要等待第一个任务执行结束才能执行..."); mythread.start(); try { mythread.join(); //执行后,当前线程不会向下执行,直到把mythread这个线程执行完了后才执行下面的 } catch (InterruptedException e) { e.printStackTrace(); } MyRunnable myRunnable = new MyRunnable(); Thread runnable = new Thread(myRunnable,"咫尺天涯(Runnable)"); runnable.start(); } }
发表评论
-
java json-lib & jQuery & jsonp
2016-06-30 11:31 826参考链接: 1、http://hanqunfeng.iteye ... -
随机分配算法(Intege)
2016-01-08 13:05 5195参考资料: http://blog.csdn.net/yaer ... -
XSS之xssprotect
2012-12-07 23:03 29489参考资料 1 跨网站脚本 ... -
Java之Thread(线程题)
2011-10-31 12:33 1974特别说明:java线程相关的参考了张孝祥老师的代码 参考资料 ... -
Java之ThreadLocal(Synchronized)
2011-10-31 10:10 2693参考资料 1 深入研究java.lang.ThreadLoca ... -
Java之synchronized,wait,notify结合运用示例
2011-10-26 11:54 5937场景一:要求二个线程各 ... -
Java之synchronized深入应用
2011-10-23 08:03 1941参考资料 1 java synchronized详解 http ... -
Java之Timer入门
2011-10-11 15:32 1693参考资料 1 java中timer用 ... -
Java之线程(匿名内部类)
2011-10-10 16:36 164301 Thread对象 Thread t = new Thr ... -
Java之线程(synchronized,wait(),notify(),notifyAll())
2011-10-10 15:03 3250参考资料 Java多线程入门大全(适用于有一定基础者) htt ... -
Java之线程(sleep,线程名)
2011-10-10 13:09 9716参考资料 1 Java线程:创建与启动 http://lava ... -
Java之线程入门
2011-10-10 11:11 1536参考资料 1 Java线程:概 ... -
java之表反向生成类
2011-09-23 16:41 3482环境:XP+JDK1.5+Oracle10g 注意事项 1 请 ... -
java之线程, NIO学习资料
2011-09-19 12:13 1131Concurrent In Java 6 第一部分 集合 ... -
Java之BigDecimal
2011-09-15 10:12 18026参考资料 1 java.math.BigDecimal的用法 ... -
java.lang.OutOfMemoryError异常解决方法
2011-08-27 16:47 2110转载:java.lang.OutOfMemoryError异常 ... -
Jcom之jp.ne.so_net.ga2.no_ji.jcom.JComException: createInstance() failed HRESULT=
2011-08-25 12:33 11739参考资料 java应用jcom将word转pdf http:/ ... -
Quartz之AnnualCalendar
2011-08-11 17:14 5819问题1 我想排除一年中 ... -
Quartz之InterruptableJob
2011-08-11 11:03 11780问题1 由于业务需要,停止Quartz中正在执行的任务 Qua ... -
Quartz之JobExecutionException
2011-08-11 10:06 13407问题1 如果你的任务执 ...
相关推荐
此外,sleep方法可以使线程进入阻塞状态一段时间,而join方法则允许一个线程等待另一个线程完成其任务。 了解线程池的概念也是Java多线程编程中的一个重要知识点。线程池是一种多线程处理形式,它将线程和任务的...
Java线程有10个优先级(MIN_PRIORITY, NORM_PRIORITY, MAX_PRIORITY),默认优先级是NORM_PRIORITY。但是,线程优先级并不保证绝对的执行顺序,操作系统调度策略可能影响实际执行顺序。 7. join()方法: 一个线程...
阻塞状态通常发生在线程等待I/O操作完成、调用sleep()方法、等待锁释放或者调用join()方法等待其他线程结束时。 在`threadTest`这个案例中,我们可能会看到如何使用这些概念来创建实际的应用场景。例如,一个典型的...
- `join()`方法:让当前线程等待另一个线程完成其执行。 4. **线程优先级与调度**:Java的`Thread`类提供了设置线程优先级的方法,如`setPriority(int priority)`,但实际线程调度依赖于操作系统的策略,优先级并...
Java线程中的`join()`方法是一个非常重要的同步工具,它允许一个线程(通常为主线程)等待另一个线程(子线程)执行完成后再继续执行。`join()`方法定义在`java.lang.Thread`类中,它使得多线程间的协作更加有序。 ...
线程联合(Join)是让一个线程等待另一个线程完成后再继续执行,通过调用`join()`方法实现。 9.11 守护线程: 守护线程(Daemon)是一种不阻止程序退出的线程,如垃圾收集器就是守护线程。当所有非守护线程结束时,...
以上就是对Java线程中wait、await、sleep、yield、join用法的总结。这些方法在实际开发中,对于控制多线程运行的时序和协调非常关键。理解这些方法的正确使用方式是掌握Java并发编程的基础。同时,使用时需特别注意...
Java线程有10个优先级,从`MIN_PRIORITY`(1)到`MAX_PRIORITY`(10),默认是`NORM_PRIORITY`(5)。优先级高的线程更可能被调度执行,但不保证。 4. **线程同步** 当多个线程访问共享资源时,可能会出现竞态条件,...
`Thread.join()`可以让主线程等待子线程完成后再继续执行。 “异步”标签则涉及到了程序设计中的非阻塞特性,有助于提升系统的并发能力和响应性。Java 8引入的CompletableFuture提供了一种更高级的异步编程模型,...
Thread 类是一个基本的线程类,它提供了许多有用的方法来控制线程的执行,如 start() 方法、join() 方法、sleep() 方法等。Runnable 接口是一个函数式接口,它提供了一个 run() 方法,用于定义线程的执行逻辑。 二...
创建Java线程主要有两种方式:继承Thread类和实现Runnable接口。继承Thread类可以直接重写run()方法,而实现Runnable接口则需要提供一个包含业务逻辑的run()方法,并通过构造Thread对象传入该Runnable实例。后者更为...
在Java编程语言中,多线程是核心特性之一,它允许程序同时执行多个任务,从而提高了应用程序的效率和响应速度。本示例着重探讨如何在Java中实现和管理多线程,以及它带来的挑战和解决方案。 一、Java多线程基础 1. ...
此外,可能会探讨`join()`, `Thread.yield()`等控制线程行为的方法。 4. **并发工具类**:Java并发包(`java.util.concurrent`)中的各种工具类,如`ExecutorService`, `Future`, `Callable`, `CountDownLatch`, `...
在 Java 中,线程可以使用 join() 方法来等待其他线程的结束。join() 方法可以使当前线程等待指定的线程结束后继续执行。 ```java public class ThreadDemo { public static void main(String[] args) { Thread t...
- 等待(Waiting):线程调用wait()、join()或park()方法,进入等待状态,直到其他线程唤醒。 - 完结(Terminated):run()方法执行完毕或线程被中断。 3. **线程同步** - synchronized关键字:用于修饰方法或...
可以使用`wait()`、`notify()`或`join()`方法实现线程间的同步。 8. **网络请求库**:通常会用到HTTP客户端库,如Apache HttpClient、OkHttp或Java内置的`java.net.HttpURLConnection`,它们提供接口来发起HTTP请求...
Java线程有五种基本状态:新建(NEW)、可运行(RUNNABLE)、阻塞(BLOCKED)、等待(WAITING)和终止(TERMINATED)。线程从新建到终止会经历这些状态的转换。 4. 线程同步与互斥: 为了避免多线程环境下资源...
#### 一、Java线程:概念与原理 1. **操作系统中线程和进程的概念** - 当前的操作系统通常为多任务操作系统,多线程是实现多任务的一种手段。 - **进程**:指内存中运行的应用程序,每个进程拥有独立的内存空间。...
例如,可能会有创建和启动线程的示例,以及使用`join()`方法使主线程等待子线程完成的场景。通过分析和学习这段代码,我们可以更好地理解Java多线程的工作原理和实际应用。 总之,Java多线程技术是开发高并发应用...
Java提供了几种方法来控制线程的执行,如sleep(), join(), yield(), interrupt()等。sleep()方法使当前线程进入睡眠状态;join()让当前线程等待指定线程结束后再继续执行;yield()则让当前线程暂停,给其他线程执行...