暂停线程怎么让一个线程暂停

暂停线程  时间:2021-09-02  阅读:()

怎么做线程停止?

不能用可以用interrupt 这个比如: class xxx implements Runnable{ public void run(){ //进入run方法里 try{ Thread.sleep(1000); System.out.println(" 已经完成休眠"); }catch(InterruptedException e) { System.out.ptintln("休眠终止"); return ; } System.out.println("run()方法结束"); } public class yyyy{ pulic static void main(String args[]){ xxx mt = new xxx(); Thread t =new Thread(mt,"线程"); t.start() //启动线程 t.interrupt() ; //中断线程

如何让正在运行的线程暂停一段时间

1. 可以使用Thread类的Sleep()方法让线程暂停一段时间。

需要注意的是,这并不会让线程终止,一旦从休眠中唤醒线程,线程的状态将会被改变为Runnable,并且根据线程调度,它将得到执行。

2. 可以使用thread.wait()方法来让线程暂停一段时间,wait方法里面填写的是暂停的时间的长度,一毫秒为单位,

在java中如何中止一个线程?

你那个线程是否在睡觉呢?(调用了sleep()) 等它醒来要让它检查一下是否被人给interupt了 调用isInterupted()就行了,这样才能将它停掉 你也可以在一个方法内部将它停掉: class Cat{ synchronized syn_method(){ //do something; this.wait(); } ..... public void run(){ a_cat.syn_method(); } 然后再用a_cat的另一个引用: a_cat.notifyAll();将它唤醒 或者不唤醒,让它停掉 或者这样: boolean =false; .... public void run(){ while(!){ //do something } } .... =true;就将它停了;

java线程暂停与继续

1、拿到这个sleep的线程后,调用该线程对象的interrupt方法就可以停止sleep,再加上相应的try...catch就可以继续往下运行了。

试下看吧。

java线程如何停止

你实现的有问题吧, 有继承线程类,或实现Runnable吗? 如果没有这样,那你做的想当于在同一个线程里做了一个死循环。

下边是个例子,你参考一下, 点开始过度条在动,点一下暂停,会停下来,再点一下暂停又会动起来。

点会停下来,你看一下。

---------------------------------------------------------------- import java.awt.Dimension; import java.awt.Toolkit; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JProgressBar; import javax.swing.JToolBar; import javax.swing.JButton; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class Table extends JFrame implements Runnable { private JProgressBar progress = new JProgressBar(); private boolean start = false; private boolean pause = false; private JButton btnStart; public Table() { setResizable(false); getContentPane().setLayout(null); JToolBar toolBar = new JToolBar(); toolBar.add(new JLabel("state")); toolBar.add(progress); toolBar.setFloatable(false); toolBar.setBounds(0, 247, 454, 21); getContentPane().add(toolBar); btnStart = new JButton("start"); btnStart.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { login(); } }); btnStart.setBounds(12, 10, 91, 21); getContentPane().add(btnStart); JButton btnPause = new JButton("Pause"); btnPause.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { pause = !pause; } }); btnPause.setBounds(131, 10, 91, 21); getContentPane().add(btnPause); JButton = new JButton(""); .addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { start = false; } }); .setBounds(241, 10, 91, 21); getContentPane().add(); setDefaultCloseOperation(EXIT_ON_CLOSE); setLocationRelativeTo(null); setSize(460, 300); Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); setLocation((screenSize.width - getWidth()) / 2, (screenSize.height - getHeight()) / 2); setVisible(true); } public static void main(String[] args) { new Table(); } private void login() { start = true; btnStart.setEnabled(false); new Thread(this).start(); } public void run() { int value = 0; while (start) { try { if (pause) { Thread.sleep(50); continue; } progress.setValue(value++); if (progress.getValue() == progress.getMaximum()) { break; } Thread.sleep(50); } catch (Exception e) { } } } }

怎么让一个线程暂停

先定义一个boolean类型,假设 boolean flag = true; whiel(flag) { 执行线程代码。









} 当不想让线程继续运行的时候就把flag改为false就行了 一般现在都不用的了,而且jdk也抛弃了方法。

完美推出 exit(0); 暂停 这功能总要有样东西去触发,对吧?楼主是想用什么去触发?一个按钮也需要去点击才会生效啊 从头开始运行 直接使用goto

什么是BGP国际线路及BGP线路有哪些优势

我们在选择虚拟主机和云服务器的时候,是不是经常有看到有的线路是BGP线路,比如前几天有看到服务商有国际BGP线路和国内BGP线路。这个BGP线路和其他服务线路有什么不同呢?所谓的BGP线路机房,就是在不同的运营商之间通过技术手段时间各个网络的兼容速度最佳,但是IP地址还是一个。正常情况下,我们看到的某个服务商提供的IP地址,在电信和联通移动速度是不同的,有的电信速度不错,有的是移动速度好。但是如果...

Sharktech云服务器35折年付33美元起,2G内存/40G硬盘/4TB流量/多机房可选

Sharktech又称SK或者鲨鱼机房,是一家主打高防产品的国外商家,成立于2003年,提供的产品包括独立服务器租用、VPS云服务器等,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹等。之前我们经常分享商家提供的独立服务器产品,近期主机商针对云虚拟服务器(CVS)提供优惠码,优惠后XS套餐年付最低仅33.39美元起,支持使用支付宝、PayPal、信用卡等付款方式。下面以XS套餐为例,分享产品配...

BuyVM迈阿密KVM上线,AMD Ryzen 3900X+NVMe硬盘$2/月起

BuyVM在昨天宣布上线了第四个数据中心产品:迈阿密,基于KVM架构的VPS主机,采用AMD Ryzen 3900X CPU,DDR4内存,NVMe硬盘,1Gbps带宽,不限制流量方式,最低$2/月起,支持Linux或者Windows操作系统。这是一家成立于2010年的国外主机商,提供基于KVM架构的VPS产品,数据中心除了新上的迈阿密外还包括美国拉斯维加斯、新泽西和卢森堡等,主机均为1Gbps带...

暂停线程为你推荐
路由器怎么重新设置网络路由器复位后怎么重新设置nvidia官方网站NVIDIA显卡驱动光纤是什么什么是光纤?t320华为T320怎么样售后软件vivo售后的软件可以删吗摇一摇周边什么是微信摇一摇周边?code查询怎么查code?官方网店官方旗舰店和旗舰店是什么意思,有什么区别?它们卖的都是正品行货吗?官方网店官方网店和官方旗舰店有什么区别?官方网店淘宝的官方网和旗舰店有什么区别?
域名投资 安徽双线服务器租用 新网域名管理 仿牌空间 winhost 好看的桌面背景图片 免费ftp空间申请 智能骨干网 免费智能解析 电信虚拟主机 web服务器安全 如何注册阿里云邮箱 美国盐湖城 学生服务器 免费个人网页 云销售系统 免费主页空间 上海联通 cdn加速技术 美国十大啦 更多