java 线程 怎么暂停与重新开启

问题描述

java 线程 怎么暂停与重新开启

这是我的一个线程类
class senddata extends Thread{
private String command;
public void setcommand(String c){
this.command=c;
}
public void run() {
//省略行为,其实就是使用socket发送数据
}
}
我想发送一个信息,第一次发送可以没问题,第二次我使用setcommand方法换一个命令再发送,就完了!前一个命令已经发送完了,不应该执行完run方法里的东西这个线程就关闭吗?请问大牛,我这个简单的需求该怎么实现?

解决方案

start 启动线程
sleep 固定时间会自动唤醒
wait notify和notifyAll唤醒

解决方案二:

Java线程暂停

解决方案三:

具体什么问题,看了两遍没看懂你要问什么?你的线程开启了吗?就是.start()了吗

解决方案四:

在线程里使用while循环,使得线程一直在等待运行

解决方案五:

1、重新定义线程类:

class senddata extends Thread {
        private String command;

        public senddata(String c) {
                this.command = c;
        }

        public void run() {
                // 省略行为,其实就是使用socket发送数据
        }
}

2、每次发送命令新启动一个线程即可:

new senddata("mingling").start();
时间: 2024-09-30 00:04:23

java 线程 怎么暂停与重新开启的相关文章

多线程暂停和唤醒-java线程暂停和唤醒问题

问题描述 java线程暂停和唤醒问题 java线程如何暂停,暂停的时间未知.之后又可以在程序中唤醒呢? 解决方案 在数据不可用的时候,当前线程里wait:在数据可用的时候,当前线程notify 举个例子,如果一个自定义队列,有生产者线程和消费者线程: 那么,如果消费者发现队列里拿不到数据了,队列空了,那么就wait: 生产者一直在生产,如果生产了一条数据,插入队列以后,马上notifyAll,自然就把消费者唤醒了. 请举一反三. 解决方案二: java线程的暂停与唤醒测试java 线程阻塞的问题

软件-java 线程控制进度条 暂停继续

问题描述 java 线程控制进度条 暂停继续 用java实现从网上下载的进度条,想要添加按钮控制进度条比如说点击暂停,软件暂停下载,点击继续后继续下载,要怎么实现这样的功能 解决方案 1.通过http,制定Range头的文件获取字节范围.2.本机通过获取内容用RandomAccessFile 存储. 解决方案二: 首先你的服务器要支持分块下载.或者说断点续传.这样实现你说的功能就很简单了.暂停无非就是下载完当前正在下载的块或者丢弃当前下载的块.继续就是寻找没有下载的块,然后接着下载.

java线程没有响应,像是暂停了一样

问题描述 java线程没有响应,像是暂停了一样 简单地来说,就是有两个线程A和B,在main函数里面先后启动他们 线程A的run函数里面有一个while循环,循环体里主要是一句if,判断的是一个存在于A里面的一个布尔变量boo,如果是true就输出一句话,但boo在初始化的时候就已经设置为false 线程B在接收了一次输入之后,再把线程A里面的boo改成true,仅此而已. 现在问题来了,线程A始终没有输出,相当于线程A暂停了(线程A并没有被杀死),求解呀... 更加奇怪的是,如果使用debug

java多线程之:创建开启一个线程的开销

---->关于时间,创建线程使用是直接向系统申请资源的,这里调用系统函数进行分配资源的话耗时不好说.---->关于资源,Java线程的线程栈所占用的内存是在Java堆外的,所以是不受java程序控制的,只受系统资源限制,默认一个线程的线程栈大小是1M(当让这个可以通过设置-Xss属性设置,但是要注意栈溢出问题),但是,如果每个用户请求都新建线程的话,1024个用户光线程就占用了1个G的内存,如果系统比较大的话,一下子系统资源就不够用了,最后程序就崩溃了.--->对操作系统来说,创建一个线

Java线程

一.创建线程的两种方式 1. 继承Thread类 类 1) 定义子类继承Thread类. 2) 子类中重写Thread类中的run方法. 3) 创建Thread子类对象,即创建了线程对象. 4) 调用线程对象start方法:启动线程,调用run方法. 2. 实现Runnable 接口 1)定义子类,实现Runnable接口. 2)子类中重写Runnable接口中的run方法. 3)通过Thread类含参构造器创建线程对象. 4)将Runnable接口的子类对象作为实际参数传递给Thread类的构

Java线程:线程的调度-优先级

线程的优先级用1-10之间的整数表示,数值越大优先级越高,默认的优先级为5. 在一个线程中开启另外一个新线程,则新开线程称为该线程的子线程,子线程初始优先级与父线程相同. /** * Java线程:线程的调度-优先级 * * @author leizhimin */ public class Test { public static void main(String[] args) { Thread t1 = new MyThread1(); Thread t2 = new Thread(new

Java线程:线程的调度-让步

线程的让步使用Thread.yield()方法,yield() 为静态方法,功能是暂停当前正在执行的线程对象,并执行其他线程. /** * Java线程:线程的调度-让步 * * @author leizhimin */ public class Test { public static void main(String[] args) { Thread t1 = new MyThread1(); Thread t2 = new Thread(new MyRunnable()); t2.star

如何创建并运行java线程

原文链接  译者:章筱虎  校对:方腾飞 Java线程类也是一个object类,它的实例都继承自java.lang.Thread或其子类. 可以用如下方式用java中创建一个线程: 查看源代码 打印帮助 1 Tread thread = new Thread(); 执行该线程可以调用该线程的start()方法: 查看源代码 打印帮助 1 thread.start(); 在上面的例子中,我们并没有为线程编写运行代码,因此调用该方法后线程就终止了. 编写线程运行时执行的代码有两种方式:一种是创建Th

Java线程面试题 Top 50

不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题.Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员 的欢迎.大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发.调试.优化经验,所以线程相关的问题在面试中经常会 被提到. 在典型的Java面试中, 面试官会从线程的基本概念问起, 如:为什么你需要使用线程, 如何创建线程,用什么方式创建线程比较好(比如:继承thread类还是调用Runnable接口),然后逐渐问到并发问题像