调试器--jdb.exe

调试器--jdb.exe,第1张

Java调度器为Java程序提供了一个命令行调试环境 它既可在本地 也可在与远程的解释器的一次对话中执行 jdb于本地机器中可用如下的命令启动 C:\>jdb classname 当你使用 debug选项开始一个Java例程时 必须提供给Jdb 一个密码 这样 Jdb才能开始运转起来 下表包含了所有jdb命令 选项 功能 catch calssID 为特定异常出口而中断 classes 列出当前已知的类 clear classID:line 清除一个断点 cont 从断点处继续执行 down[n frames] 下移一个线程的庆亩堆栈 dump ID[ID ] 显示所有对象信息 exit(或quit) 退出调试器 help(或?)  列出所有命令 ignore classID 忽略特定的异常出口 list[line number] 显示源代码 load clas *** ame 载入要调试的Java类 locals 在当前堆栈帧中显示所有局部变量 memory 报告内存使用情况 methods classID 列出一个类的成员函数集 print ID[ID ] 列出对象或域 resume [threadID ] 恢复线程(默认情况恢复所有线程) run class [args] 开始执行已下载的Java类 step 执行当前行 stop in classID:method 在一成员函数中设一断点 stop at classID:line 在一行设一断点 suspend[threadID ] 停止一个线程(默认情况停止所有线程) hreads threadgroup 列出线程 thread threadID 设置当前线程 threadgroups 列出线程组 threadgroup name 设置当前线程组 up [n frames] 上移一个线程堆栈 use [path] 显示或改变源程序路径 where [threadID] or all 使一线程的堆线置空 !! 重复上一次命令 host hostname 该命令告诉Jdb到哪里去建立远程运行的Java解释器对话过程 password password 本选项告诉Jdb 用哪个密码去与远程誉做森运行的胡拍Java 对话进程相连接 密码 password是由运行带有 debug选项的Java解释器所提供的 lishixinzhi/Article/program/Java/JSP/201311/19242

公众:类PrivilegeProcess {

公共静态无效的主要(字串[] args){

MyQueue的MyQueue的新MyQueue的()/ /声明队列

印刷电路板[PCB = {新的PCB(001 ,8,1),新的PCB(002,7,9),新的PCB(003,3,8),新的PCB(004,1,7),新的PCB(005,7,4)}

>PCB段=新的PCB()

(INT I = 0<pcb.length+ +){/ /初始化先进行排序,选择排序这里使用的是高优先级的一线队

(J =我<pcb.lengthJ + +){

(PCB [I]。特权<PCB [J]。特权){

段= PCB [1]

PCB [I] = PCB [J]

PCB [J] =段

}

}

}

体系。通过out.println(“入队后第一时间的进程的顺序:”)

(INT I = 0<pcb.length+ +){

的System.out调用println(第一次入队#程序名称:“+ PCB [我]。名称+ totaltime:”+ PCB [I]。totaltime +“的”特权“+ PCB [我]。特权)}

()

myqueue.start(PCB)

}

}

类MyQueue的{

INT指数= 0

PCB [] PC =新的PCB [5]

PCB [] PC1 =新的PCB [4]

PCB温度=新的PCB() BR />公共无效排队(PCB工艺){/ /排队算法

(指数== 5){

(“出界!”)

返回

}

PC [索引] =进程

指数+ +

}

公共:PCB DEQUEUE(){/ /出队算法(索引== 0)

返纯档猛回空

(INT I = 0<pc1.length+ +){

PC1 [I] = PC [ +1]

}

指数 -

温度= PC [0]

(INT I = 0<pc1.length+ +){ BR />PC [I] = PC1 [I]

}

回报条件

}

公共无效启动(PCB [] PC){/ /进程表算法

(PC [0]。isNotFinish ==真做桥| | PC [1 isNotFinish ==真| | PC [2 isNotFinish ==真| | PC [3]。时isNotFinish ==真| | PC [4]。isNotFinish ==){

/ / *注:| |运算符都是假的,所有的表达式结果为假,否则真

(INT I = 0<PC长度+ +){

PC [I]。运行(这一点)/>} 的System.out.println()

(INT I = 0<pc.length+ +){/ /处理每个运行一次运行的时间片的长度重新排序优先一旦

(J =我<pc.lengthJ + +){

如果(PC [I]特权<PC [J]。特权){

温度= PC [I]

PC [I] = PC [J]

PC [J] =温度

}

}

}

}

}

}

类PCB {/ /声明过程级

和int名,totaltime ,运行时特权

布尔isNotFinish的

公众PCB(){

}

公开PCB(名称,诠释totaltime特权){

this.name =的名称/ /进程名

this.totaltime = totaltime / /

this.privilege =特权/ /总时间优先 this.runtime = 2 / /时间片值是2

this.isNotFinish =真/ /是否执行完成

(“初始值:程序名称:”+名+“totaltime:”+ totaltime +“特权”+特权)

System.out的。调用println()

}

MyQueue的MQ公共无效的run(){/ /处理的基础上实施的时间片算法

(totalTime>1){ totaltime =运行/ /总时间大蠢灶于1,总时间=总时间 - 时间片

特权 -

(“程序名称:”+姓名+“ remaintime:“+ +”特权“+特权)totaltime

的} else if(totaltime == 1){

totaltime - / /总时间为1时,执行时间为1

>特权 -

(“程序名称:”+姓名+“remaintime:”+ totaltime +“特权”+特权)

}其他{

isNotFinish =假/ / 0,将isNotFinish标志设置为假

}

如果(isNotFinish ==真){br mq.deQueue() mq.enQueue(本)}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8178806.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存