`
吕金含
  • 浏览: 88023 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

java进程

 
阅读更多

13.1 进程的简单描述

* 进程:分配资源最小的单位

* 线程:“同时”去做几件事情

* 进程与线程:

* 一个程序一个进程;

* 一个进程最少有一个线程

* 并行与并发:cpu-单核、双核、四核、八核

* 并行:真正的"同时"

* 并发:不是真正的"同时"

* 控制不了并行,一般只说并发:并发量

* 系统:实时-分时-时间轮

* 线程的实现方式 1.继承Thread 2.实现 Runnable接口

* 线程的状态state:就绪- <运行-阻塞> - 死亡

13.2 线程的生命周期,视图如下:


13.3 线程的实现方法,继承Thread,和实现Runnable举例:

第一种方式:继承Thread的实现,代码如下:

packagecom.eduask.thread.base;


publicclassTestExtendsThread {

publicstaticvoidmain(String[] args) {

MyThread myThread=newMyThread();

//线程的启动;

myThread.start();

}

}

//创建一个MyThread继承Thread;

classMyThreadextendsThread{

//添加运行方法;

@Override

publicvoidrun() {

System.out.println("继承Thread实现");

}

}


运行结果如图所示:



13.4 线程的第二个实现方式:实现Runnable接口,代码如下:

packagecom.eduask.thread.base;


publicclassTestRunnable {

publicstaticvoidmain(String[] args) {

// 创建类的对象;

MyRunnable myRunnable =newMyRunnable();

// 将类添加到线程中去;

Thread thread =newThread(myRunnable);

// 线程的启动;

thread.start();

}

}


// 创建一个MyRunnable实现Runnable接口;

classMyRunnableimplementsRunnable {


@Override

publicvoidrun() {

System.out.println("Runnable实现线程");

}


}

程序运行如下:


13.5 线程的优先级

字段摘要
staticint MAX_PRIORITY
线程可以具有的最高优先级。
staticint MIN_PRIORITY
线程可以具有的最低优先级。
staticint NORM_PRIORITY
分配给线程的默认优先级。


Max_priority 的权限最高 最高为10;

Min_priority 的权限最底 最高为1;

Norm_priority 为默认权限 等级为5;

13.6 权限等级的测试,代码如下;

packagecom.eduask.thread.base;


publicclassThreadPriorityTest {

publicstaticvoidmain(String[] args) {

/**

*创建最高几线程设置权限为10;

*/

MaxPriority maxPriority=newMaxPriority();

maxPriority.setPriority(10);

maxPriority.start();

/**

* 创建最底线程设置权限为1;

*/

MinPriority minPriority=newMinPriority();

minPriority.setPriority(1);

minPriority.start();

/**

* 创建默认线程设置权限为5;

*/

NormPriority normPriority=newNormPriority();

normPriority.setPriority(5);

normPriority.start();

}

}

classMaxPriorityextendsThread{

@Override

publicvoidrun() {

for(inti = 0; i <1000; i++) {

System.out.println("MaxPriority"+i+" ");

}

}

}

classMinPriorityextendsThread{

@Override

publicvoidrun() {

for(inti = 0; i <1000; i++) {

System.out.println("MinPriority"+i+" ");

}

}

}

classNormPriorityextendsThread{

@Override

publicvoidrun() {

for(inti = 0; i <1000; i++) {

System.out.println("NormPriority"+i+" ");

}

}

}

分享到:
评论

相关推荐

    java 进程通信 实例(直接运行)

    本人写了一个java进程通信的工具jar,方便大家简单的使用java进程通信。 开启守护进程,获取消息: package com.test; import org.msun.process.ProcessMonitor; import org.msun.process.ProcessMonitor....

    java进程间管道通信1

    Java进程间的管道通信是一种进程间通信(IPC,Inter-Process Communication)的方式,它允许不同的Java进程之间通过共享的管道进行数据传输。虽然Java标准库不直接支持创建管道文件,但可以借助于操作系统提供的功能...

    java 进程调度算法模拟

    Java进程调度算法模拟是计算机科学中的一个重要概念,特别是在多任务操作系统和并发编程中。这个话题源于操作系统原理,但在Java环境中,我们可以通过编程实现对进程调度的模拟,以便理解和掌握不同的调度策略。在这...

    java进程间通讯机制代码----RMI、共享内存、Socket、管道

    java进程间通讯机制代码----RMI、共享内存、Socket、管道,等方式,每种方法我都讲了原理和例子程序,很有参考意义。在网上很难找到的。

    java 进程间利用管道通信实例

    Java进程间通信(IPC, Inter-Process Communication)是多进程应用程序之间共享数据和协同工作的关键技术。在这个特定的实例中,我们关注的是通过管道(Pipe)实现的IPC,这是Java提供的一种简单而有效的通信机制。...

    Java进程cpu占用率高

    在Java编程环境中,当遇到“Java进程CPU占用率高”的问题时,这通常意味着Java应用程序在执行过程中消耗了大量计算资源,可能导致系统响应变慢,甚至出现性能瓶颈。本篇文章将深入探讨这个问题,并提供相关解决方案...

    zabbix监控JAVA 进程 JVM数据统计分析告警监控

    zabbix自动发现JAVA进程,并进行自动添加监控JAVA 进程的JVM数据,统计分析告警监控。 支持多种中间件,tomcat、weblogic、微服务方式部署JAVA应用监控。 自带发现脚本和监控脚本,以及zabbix导入模板。

    Linux查看处理Java进程

    Linux查看处理Java进程

    java 进程之间的网络通信

    Java进程间的网络通信是计算机编程中的一个重要概念,它允许运行在不同或相同计算机上的多个Java应用程序之间交换数据。在这个场景中,我们有两个关键文件:EchoServer.java和EchoClient.java,它们分别代表服务器端...

    JAVA 进程在64位LINUX下占用巨大内存的分析.doc

    JAVA 进程占用巨大内存的分析 在 64 位 LINUX 系统上,JAVA 进程的内存占用是一个非常重要的问题。根据给定的文件信息,我们可以看到,JAVA 进程在 64 位 LINUX 下占用了巨大内存,达到 11G,已分配地址空间更是 17...

    java进程间通信机制.ppt

    java进程间通信机制.ppt

    java进程方法栈分析

    java进程方法栈分析方法。可以找到导致服务器负载高的线程的相应代码。

    java进程通讯

    java进程间通讯机制代码 RMI(Remote Method Invocation)是一种基于Java的分布式编程模型,为java程序提供远程访问服务接口。

    java进程项目

    本项目名为"java进程项目",显然与Java程序的运行和管理有关,特别是涉及到使用Maven进行构建以及项目的部署过程。下面将详细介绍相关知识点。 **Java进程** Java进程是指在操作系统中运行的Java应用程序实例,每个...

    JAVA进程管理模拟

    本项目“JAVA进程管理模拟”旨在通过一个图形用户界面(GUI)来直观地展示进程优先级如何影响进程的执行顺序和资源分配。下面我们将深入探讨相关知识点。 首先,我们来理解“进程”。在操作系统中,进程是程序的一...

    基于Java的Jarboot Java进程管理平台设计源码

    本项目是基于Java的Jarboot Java进程管理平台设计源码,包含551个文件,其中包括399个Java源文件、46个TSX文件、38个TS文件、14个XML文件、9个PNG图片文件、6个Markdown文档、6个Less文件、4个gitignore文件、3个...

    java实现守护进程,有单独的监听进程, 两个或多个进程,两个或多个jvm

    `bin`目录可能包含编译后的可执行文件或脚本,用于启动和管理这些Java进程。为了深入了解实现细节,需要查看源代码并理解其逻辑。 总的来说,Java实现守护进程、监听进程以及管理多个进程和JVM涉及多线程、网络编程...

    杀java进程

    作用:专门杀java进程。 在开发码代码时:刚写的代码打包,编译无效,无需重启电脑,直接运行此文件可以杀java进程,然后在重新编译,打包解决编译无效的事情。

    输出java进程的jstack信息示例分享 通过线程堆栈信息分析java线程

    为了获取这些信息,我们可以使用jstack工具,它是Java开发工具包(JDK)的一部分,能够输出Java进程的线程堆栈跟踪信息。 jstack命令通常可以输出以下类型的信息: 1. 线程的完整堆栈跟踪,包括本地方法。 2. 显示...

    java进程通信.zip

    本资料包“java进程通信.zip”可能包含详细讲解Java进程通信的文档或代码示例。 在Java中,主要的进程通信方法有以下几种: 1. **管道(Pipes)**:Java通过`java.io.PipedInputStream`和`java.io....

Global site tag (gtag.js) - Google Analytics