1.关于编写代码中遇到要同时调用执行几种方法的时候运用线程。
在以前学到的知识中,,我们在一个类中调用方法只能是以串联的方式。当一个方法执行完成时才能执行下一个方法。但是运用线程就能实现并联的功能:
1.1在线程里面写多个方法,再在run方法里面调用这些方法:
public void run(){
if(type ==0){
a();
}
if(type ==1){
b();
}
if(type ==2){
c();
}
if(type ==3){
d();
}
}
public void a(){
int scrx = 0;
int scry = 0;
for(int i=0;i<10000;i++){
System.out.println("a执行啦");
if(go){
//设置颜色
g.setColor(Color.BLUE);
g.clearRect(scrx, scry, 30, 30);
g.fillOval(i, i, 30, 30);
scrx =i;
scry =i;
//程序暂停时间
try{
Thread.sleep(100);
}catch(Exception ef){}
}else{try{
Thread.sleep(100);
}catch(Exception ef){}}
}
}
public void b(){
int scrx = 0;
int scry = 0;
for(int i=0;i<10000;i++){
if(go){
System.out.println("b执行啦");
g.setColor(Color.green);
g.clearRect(scrx, scry, 30, 30);
g.fillOval(980-i, i, 30, 30);
scrx =980-i;
scry =i;
try{
Thread.sleep(100);
}catch(Exception ef){}
}else{try{
Thread.sleep(100);
}catch(Exception ef){}}
}
}
public void c(){
int scrx = 0;
int scry = 0;
for(int i=0;i<10000;i++){
if(go){
System.out.println("c执行啦");
g.setColor(Color.BLUE);
g.clearRect(scrx, scry, 30, 30);
g.fillOval(i, 680-i, 30, 30);
scrx =i;
scry =680-i;
try{
Thread.sleep(100);
}catch(Exception ef){}
}else{try{
Thread.sleep(100);
}catch(Exception ef){}}
}
}
public void d(){
int scrx = 0;
int scry = 0;
for(int i=0;i<10000;i++){
if(go){
System.out.println("d执行啦");
g.setColor(Color.gray);
g.clearRect(scrx, scry, 30, 30);
g.fillOval(980-i, 680-i, 30, 30);
scrx =980-i;
scry =680-i;
try{
Thread.sleep(100);
}catch(Exception ef){}
}else{try{
Thread.sleep(100);
}catch(Exception ef){}}
}
}
1.2写好线程类,即是继承于Thread,之后,在于事件监听器中实例化线程对象,运用对象调用start()方法,这样便会执行写入run()中的方法。
PaintThread pt = new PaintThread(g,0);
pt.start();
PaintThread pt1 = new PaintThread(g,1);
pt1.start();
PaintThread pt2 = new PaintThread(g,2);
pt2.start();
PaintThread pt3 = new PaintThread(g,3);
pt3.start();
这样上面的四个方法会同时运行,得到如下效果:[img]
[/img]。
就是四个小球从四个方向同时走动!!!!
- 大小: 29.6 KB
分享到:
相关推荐
【线程的概念与作用】 线程是操作系统中执行的基本单元,是进程的一部分,它比进程更细粒度,是CPU调度和分派的基本单位。线程自身只持有少量资源,如程序计数器、寄存器和栈,但它可以和其他线程共享进程的所有...
浅谈线程的几种可用状态 线程是操作系统中的一种基本概念,它可以帮助我们更好地管理系统资源和提高系统的效率。线程有多种状态,这些状态之间可以相互转换,了解这些状态对于我们编写高效的多线程程序非常重要。 ...
浅谈线程通信wait、notify作用 在多线程编程中,线程之间的通信非常重要。wait()和notify()方法是Java语言中最基本的线程通信机制。它们可以使得线程之间相互发送信号,从而实现线程之间的协作。 wait()方法的作用...
### 浅谈Android线程模型:深入理解与实践 #### 引言 随着智能手机的普及和技术的不断进步,Google的Android操作系统成为了移动设备领域的重要力量。Android不仅为用户提供了丰富的功能,也为开发者提供了广阔的...
浅谈C#跨线程调用窗体控件引发的线程安全问题 C#跨线程调用窗体控件时可能会引发线程安全问题,例如当多个线程操作同一个控件时,该控件可能会进入不一致的状态,出现争用情况和死锁等问题。因此,确保以线程安全...
【多线程】是计算机编程中的一个重要概念,它允许程序在同一时间内执行多个任务,从而提高了程序的执行效率。在Java中,多线程是通过创建并运行多个线程来实现的,每个线程代表着进程中的一条独立控制流。Java线程是...
"浅谈Java多线程编程" 从标题和描述可以看出,这篇文章的主题是讨论Java多线程编程的相关知识点。 多线程编程的概念 Java语言的一个重要特点是支持多线程机制,这使得Java程序可以支持多程序并发执行,从而提高...
【Java多线程编程】是Java开发中不可或缺的一部分,它允许程序同时执行多个任务,从而提高效率和响应速度。本文将深入探讨Java多线程的优缺点、创建方式以及线程安全与同步机制。 **一、多线程的优缺点** 1. **...
浅谈JAVA语言的多线程技术 一、多线程技术的概述 JAVA语言作为一种面向对象的编程语言,它具有平台独立性、安全性、网络化、多线程、面向对象等特点。其线程机制在实践中广泛应用而受到编程者的极大关心。本文就...
【Linux下的多线程编程】 在Linux操作系统中,多线程编程是一种常见且重要的编程模型,它允许多个执行流(线程)在一个进程中同时运行,以提高程序的并发性和资源利用率。多线程在系统开发中扮演着关键角色,特别是...
在Java编程语言中,多线程是程序设计中的一个重要概念,尤其在开发高效能、响应迅速的应用时。本文将深入探讨Java中多线程的实现,帮助开发者理解如何利用这一特性来优化应用程序。 多线程是指在一个程序中同时运行...
### 浅谈Java的多线程机制 #### 一、引言 随着计算机技术的不断发展,编程模型变得越来越复杂和多样化。多线程编程模型作为目前计算机系统架构中的一个重要组成部分,其重要性日益凸显。特别是在X86架构的硬件成为...
在.NET框架中,多线程和并行计算是提高应用程序性能和响应能力的关键技术。本文将深入探讨这两个概念,以及如何在.NET环境下有效地利用它们。 首先,多线程是指一个程序中同时执行多个独立的线程,每个线程都有自己...
在Linux中,多线程编程主要依赖于POSIX线程库(通常称为pthreads),其API包括`pthread_create()`用于创建线程,`pthread_join()`用于等待线程结束,以及`pthread_mutex_lock()`和`pthread_mutex_unlock()`用于互斥...
在Java编程中,线程是程序执行的最小单元,它们允许并发处理多个任务,提高程序的效率。本文将深入探讨Java线程的生命周期,包括创建、启动、结束以及线程的协作和调度。 首先,创建Java线程有两种主要方式:直接...