A. DOS命令-多线程问题
创建多个文件夹
如果你需要在某个目录下分别创建名称为“a”、“b”、“c”、“d”的4个文件夹,那么你只需要将目录定位到该文件夹,再将上面的命令修改为“md a b c d”命令即可(注意“a”、“b”、“c”、“d”字母前各有一个半角空格键)。
当然,你也可以直接输入目录来执行改命令,如“md f:\a f:\b”,这样就会在F盘下分别建立名字为“a”和“b”的两个文件夹。
B. linux如何进行线程管理
方法一:PS
在ps命令中,“-T”选项可以开启线程查看。下面的命令列出了由进程号为<pid>的进程创建的所有线程。
1.$ ps -T -p <pid>
“SID”栏表示线程ID,而“CMD”栏则显示了线程名称。
方法二: Top
top命令可以实时显示各个线程情况。要在top输出中开启线程查看,请调用top命令的“-H”选项,该选项会列出所有Linux线程。在top运行时,你也可以通过按“H”键将线程查看模式切换为开或关。
1.$ top -H
要让top输出某个特定进程<pid>并检查该进程内运行的线程状况:
$ top -H -p <pid>
C. 怎样暂时停止一个thread,然后我给一个命令thread继续
楼主参考这个
解释很详细了
java code?
JAVA 线程很好的例子
import java.io.*;
//多线程编程
public class MultiThread{
public static void main(String args[]){
System.out.println("我是主线程!";
//下面创建线程实例thread1
ThreadUseExtends thread1=new ThreadUseExtends();
//创建thread2时以实现了Runnable接口的ThreadUseRunnable类实例为参数
Thread thread2 = new Thread(new ThreadUseRunnable(),"SecondThread";
thread1.start();//启动线程thread1使之处于就绪状态
//thread1.setPriority(6);//设置thread1的优先级为6
//优先级将决定cpu空出时,处于就绪状态的线程谁先占领cpu开始运行
//优先级范围1到10,MIN_PRIORITY,MAX_PRIORITY,NORM_PAIORITY
//新线程继承创建她的父线程优先级,父线程通常有普通优先级即5NORM_PRIORITY
System.out.println("主线程将挂起7秒!";
try{
Thread.sleep(7000);//主线程挂起7秒
}catch (InterruptedException e){
return;
}
System.out.println("又回到了主线程!";
if(thread1.isAlive()){
thread1.stop();//如果thread1还存在则杀掉他
System.out.println("thread1休眠过长,主线程杀掉了thread1!";
}else
System.out.println("主线程没发现thread1,thread1已醒顺序执行结束了!";
thread2.start();//启动thread2
System.out.println("主线程又将挂起7秒!";
try{
Thread.sleep(7000);//主线程挂起7秒
}catch (InterruptedException e){
return;
}
System.out.println("又回到了主线程!";
if(thread2.isAlive()){
thread2.stop();//如果thread2还存在则杀掉他
System.out.println("thread2休眠过长,主线程杀掉了thread2!";
}else
System.out.println("主线程没发现thread2,thread2已醒顺序执行结束了!";
System.out.println("程序结束按任意键继续!");
try{
System.in.read();
}catch (IOException e){
System.out.println(e.toString());
}
}//main
}//MultiThread
class ThreadUseExtends extends Thread{
//通过继承Thread类,并实现它的抽象方法run()
//适当时候创建这一Thread子类的实例来实现多线程机制
//一个线程启动后(也即进入就绪状态)一旦获得CPU将自动调用它的run()方法
ThreadUseExtends(){}//构造函数
public void run(){
System.out.println("我是Thread子类的线程实例!");
System.out.println("我将挂起10秒!");
System.out.println("回到主线程,请稍等,刚才主线程挂起可能还没醒过来!");
try{
sleep(10000);//挂起5秒
}catch (InterruptedException e){
return;
}
//如果该run()方法顺序执行完了,线程将自动结束,而不会被主线程杀掉
//但如果休眠时间过长,则线程还存活,可能被stop()杀掉
}
}
class ThreadUseRunnable implements Runnable{
//通过实现Runnable接口中的run()方法,再以这个实现了run()方法的类
//为参数创建Thread的线程实例
//Thread thread2=new Thread(this);
//以这个实现了Runnable接口中run()方法的类为参数创建Thread类的线程实例
ThreadUseRunnable(){}//构造函数
public void run(){
System.out.println("我是Thread类的线程实例并以实现了Runnable接口的类为参数!");
System.out.println("我将挂起1秒!");
System.out.println("回到主线程,请稍等,刚才主线程挂起可能还没醒过来!");
try{
Thread.sleep(1000);//挂起5秒
}catch (InterruptedException e){
return;
}
//如果该run()方法顺序执行完了,线程将自动结束,而不会被主线程杀掉
//但如果休眠时间过长,则线程还存活,可能被stop()杀掉
}
}
//该程序可做的修改如改休眠时间或优先级setPriority()
D. 查询windows线程数的命令
FindNextThread32遍历查找
E. 按键精灵多线程命令循环一定时间后终止
线程ID1=BeginThread(a)
线程ID2=BeginThread(b)
Dim n
n=now
Rem q
//脚本15秒后停止
Delay 1000
If DateDiff("s",n,now)>= 15 then
StopThread 线程ID1
StopThread 线程ID2
Else
Goto q
End If
Sub a
Rem q
Delay 1000
Goto q
End Sub
Sub b
Rem q
Delay 1000
Goto q
End Sub
Sub OnScriptExit()
MessageBox "脚本已经停止!"
End Sub
F. 易语言启动线程()命令怎么用
启动线程 (&子程序, , )
前面有个 & 符号
G. 关于JAVA线程的问题,创建若干线程,每个线程都执行同一条命令,求JAVA高手解答
不要采纳 谢谢 刚我试了一下 不对
H. 中断线程用什么命令
1.打开"中断服务管理器(任务管理器)"
2.在"进程"选项卡上的"用户"列下,右键单击要结束的进程,然后单击"结束进程".
注意:
1.
必须具有完全控制权限才能结束进程。
2.
要打开“终端服务管理器”,请依次单击“开始”和“控制面板”,双击“管理工具”,然后双击“终端服务管理器”。
3.
请注意:在没有警告的情况下结束进程会导致用户会话中的数据丢失。
4.
可能需要结束进程,因为应用程序没有响应。
5.
也可以使用
tskill
命令结束进程。
强制结束进程的命令行
Windows操作系统中只有System、SMSS.EXE和CSRSS.EXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。ntsd从2000开始就是系统自带的用户态调试工具。被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得了debug权限,从而能杀掉大部分的进程。ntsd会新开一个调试窗口,本来在纯命令行下无法控制,但如果只是简单的命令,比如退出(q),用-c参数从命令行传递就行了。Ntsd按照惯例也向软件开发人员提供。只有系统开发人员使用此命令。有关详细信息,请参阅
NTSD
中所附的帮助文件。用法:开个cmd.exe窗口,输入:
ntsd
-c
q
-p
PID
把最后那个PID,改成你要终止的进程的ID。如果你不知道进程的ID,任务管理器->进程选项卡->查看->选择列->勾上"PID(进程标识符)",然后就能看见了。
XP下还有两个好用的工具tasklist和tskill。tasklist能列出所有的进程,和相应的信息。tskill能查杀进程,语法很简单:tskill
程序名!
结束进程的一些巧用小窍门:
误删VCD文件的另类恢复
现在很多人会把一些不错的VCD直接拷入硬盘保存。但你是否误删过这些百看不厌的经典之作呢?那么怎样才能在不用恢复软件的情况下手动恢复它们呢?
笔者找到了一个另类的恢复方法,并且效果还不错。首先要知道误删的VCD文件的文件名和原文件存储路径。一般情况下VCD的主要视频文件是VCD根目录下的Mpegav文件夹,文件名一般为Avseq0?.dat或Music0?.dat,其中“?”代表数字(1~9)。有的VCD序幕和正式内容是一个文件,即Avseq01.dat或Music01.dat;也有的VCD序幕和正式内容分别为两个文件,即序幕为Avseq01.dat或Music01.dat,而正式内容为Avseq02.dat或Music02.dat。
首先,找一个和误删文件同名的文件(暂且称为A),接着将A复制到原误删文件的同一文件夹中。在出现“正在复制...”窗口时,按下Ctrl+Alt+Del结束“正在复制...”任务,如果“正在复制...”窗口不消失,就再次按下Ctrl+Alt+Del结束“正在复制...”任务。就这么简单,到原误删文件存储的地方看一下,是不是又失而复得了?用多媒体播放软件打开,只是开头几秒种是文件A的内容,后面的照看不误。
保存拷了一部分的文件
如果你经常会把MP3、CD、VCD、MPEG、RM等音、视频文件(或其他类型的文件)从光盘中复制到硬盘,那么可能会遇到复制到只剩下一点点时,Windows提示“复制文件出错”,这时只要按回车键或点击“确定”按钮,那么辛辛苦苦复制的文件就会丢失。
其实只要马上激活“任务管理器”,把“出错的对话框”和“正在复制”的任务都关闭掉。那么文件就会以原文件大小保存下来了,当然这还是有缺点的,当此类文件播放到断点的地方时就会停止。
巧玩游戏
本人用的是Windows
XP家庭版,运行一些支持Windows
2000但不支持Windows
XP的游戏时,鼠标、键盘失去反应。某日发现一解法:打开“任务管理器”,结束EXPLORER.EXE进程,点“新任务”,找到游戏运行文件,运行即可。另外,结束SVCHOST.exe(为当前用户名的)进程可以去掉Windows
XP风格。
I. 如何在windows下调试多线程的命令行程序
windows上调试多线程,可以在被调试线程中加一段asm汇编代码:
__asm { int 3}
也可以在被调试线程上加上一个输入操作,中断线程。
比如 加上一句
getchar()
J. 进程和指令、线程和指令的区别
进程(process)常常被定义为程序的执行。可以把一个进程看成是一个独立的程序,在内存中有其完备的数据空间和代码空间。一个进程所拥有的数据和变量只属于它自己。
线程是指进程内的一个执行单元,也是进程内的可调度实体.
进程与进程的区别:
(1)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地址空间;而进程有自己独立的地址空间;
(2)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资源
(3)线程是处理器调度的基本单位,但进程不是.
4)二者均可并发执行.
进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。进程是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体,是CPU调度和分派的基本单位,线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源。一个线程可以创建和撤销另一个线程,同一个进程中的多个线程之间可以并发执行。