java编程:java的多线程是怎么实现的?高手进吧

author author     2023-04-17     417

关键词:

如题哈,
【不是怎么用java的多线程,而是其实怎么是怎么实现的】
【不要说讨论这个没有意义,对某些人可能只会用就行了,但对另外一些人而言,则想提高其效率】
【问题详述】
我们知道现在的每一种语言都是先实现其核心,然后再领用语言本身来开发出额外功能,也就是我们常说的“库”,这种思想来源于lisp的Macro,也就是说java的“多线程”,也是用java本身实现的,那么它是怎么实现的呢?
-----------------------------------------------------------------------------------------------
难不成是为每个线程开辟一块存储空间,然后领用规定好的时间片轮换执行这些存储空间中的程序段吗?
-----------------------------------------------------------------------------------------------
希望大鸟给出解释,非常感谢。

参考技术A 每个线程都有自己的资源空间,好像叫做"thread context",这包括堆(stack),存储变量的内存等。好像是时间片轮换(time slice),但也有优先权等级(priority)。
多线程是一个基本计算问题,不仅限于哪一种语言。本回答被提问者和网友采纳
参考技术B 按照我的理解,多线程应该是在一块存储空间里再次划分多个小空间,使多线程的内容能在时间片程度是相近时间内进行运行追问

嗯,操作系统的那些书中是这么说的,你说的是“时间片轮转法”,还有其他方法,例如“顺序法”,“优先级”...............但问题是,java的多线程是怎么实现的..............具体实现的思路?

追答

java的多线程实现方式有两种:1.继承Thread2.实现Runable接口
考虑到java的单继承多实现,所以建议采用第二种。实现的思路在网上可以搜一些例子看看

参考技术C 同求。。

java多线程是怎么回事?

...间的通信和转换只需要较小的系统开销。Java支持多线程编程,因此用Java编写的应用程序可以同时执行多个任务。Java的多线程机制使用起来非常方便,用户只需关注程序细节的实现,而不用担心后台的多任务系统。Java语言里,... 查看详情

java的多线程实现生产/消费模式

Java的多线程实现生产/消费模式在Java的多线程中,我们经常使用某个Java对象的wait(),notify()以及notifyAll()方法实现多线程的通讯,今天就使用Java的多线程实现生产/消费模式,需求如下:线程AProductThread继承Thread实现生产数据若线程... 查看详情

java并发编程系列之二线程基础

...,这是学习一个知识遵循的原则。推荐读者先行查看并发编程的理论知识,以便可以丝滑入戏。并发编程系列之一并发理论基础本篇文章重点在于Java中怎么去使用多线程,和多线程的一些相关概念和操作,及怎么优化多线程。... 查看详情

java线程

Java对多线程编程提供了内置支持。多线程程序包含同时运行的两个或更多个部分,这种程序的每一部分被称为一个线程,并且每个线程定义了单独的执行路径,因此多线程是特殊形式的多任务处理。多任务处理有两种不同的类... 查看详情

java目录树:用jtree实现d盘的目录树?java高手进

结果效果应该时这样的,比如实现了d盘的目录树,那么根据根目录一级一级展开,有点像eclipse的资源视图似的的,写好了追加50分!!!!!参考技术A我有例子,现在找不到了,等几天给你... 查看详情

java中“与”或“非”怎么写?

...&&,或:||,非:!。拓展:Java:是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。2.特点:Java语言作为静态面向对... 查看详情

java多线程是啥?一个处理器怎么同时处理多个程序

...间的通信和转换只需要较小的系统开销。Java支持多线程编程,因此用Java编写的应用程序可以同时执行多个任务。Java的多线程机制使用起来非常方便,用户只需关注程序细节的实现,而不用担心后台的多任务系统。Java语言里,... 查看详情

java异步编程——深入源码分析futuretask

Java的异步编程是一项非常常用的多线程技术。之前通过源码详细分析了ThreadPoolExecutor《你真的懂ThreadPoolExecutor线程池技术吗?看了源码你会有全新的认识》。通过创建一个ThreadPoolExecutor,往里面丢任务就可以实现多线程异步执... 查看详情

java实现一个的基于nio的多线程web服务器(代码片段)

...,及Session和HTTP长连接的定时清除;类似SpringMVC的注解式编程,如 @RequestMapping @RequestParam 等,方法中可以根据参数名从前台获取数据,可以传递对象,也支持级联属性,如 查看详情

java多线程0:核心理论

  并发编程是Java程序员最重要的技能之一,也是最难掌握的一种技能。它要求编程者对计算机最底层的运作原理有深刻的理解,同时要求编程者逻辑清晰、思维缜密,这样才能写出高效、安全、可靠的多线程并发程序。本系... 查看详情

[java]java多线程编程和io流(代码片段)

一、多线程1.进程、线程、并发、并行进程是程序的一次执行过程,或是正在进行的一个程序。是动态过程,有其自身的产生、存在和消亡过程线程是由进程创建的,是进程的一个实体;一个进程可以拥有多个线... 查看详情

java多线程,线程安全与不安全的理解,程序的多线程并发编程的基础概念,进程与线程的区别是什么(代码片段)

简述程序的结构一个程序读入内存时,全部由0合1组成的(初代计算机是由电路配合灯泡进行处理的,0表示关闭1表示开启),从内存读入到CPU处理,需要通过总线;总线的类型总线分为三种:控制线、地址线... 查看详情

java里面的thread类存在的意义是啥

...个线程。单使用runnable是无法启动一个线程的。在多线程编程中需要大量使用thread类。对于这种疑问,多进行多线程编程实践是理解问题的最好办法,不过多线程编程有较高的难度,如果要运行的稳定、高效的话。 参考技术BRunna... 查看详情

java编程思想之并发

1.并发的多面性更快的执行改进代码设计2.基本的线程机制线程的创建```/*Whatwillberun.*/privateRunnabletarget;@Overridepublicvoidrun(){if(target!=null){target.run();}}```(1)实现Runnable接口:newThread(Runnable).start();将任务与线程分离,符号面向对象思... 查看详情

关于java的多线程

进程process线程Threadmain称之为主线程,为系统的入口,用于执行整个程序线程创建的三种方式:继承Thread类实现Runnable接口实现Callable接口继承Thread类:publicclassTestextendsThread@Override 查看详情

java并发编程面试题

   并发编程面试题-内存模型说下内存模型定义为什么要有内存模型为什么要重排序,重排序在什么时候排如何约束重排序规则happens-before什么是顺序一致性CAS实现的原理,是阻塞还是非阻塞方式?什么时候用,使用时... 查看详情

2019年全网最热门的123个java并发面试题总结

前言并发编程几乎是所有互联网公司面试必问的问题,并发编程是Java程序员最重要的技能之一,也是最难掌握的一种技能。它要求编程者对计算机最底层的运作原理有深刻的理解,同时要求编程者逻辑清晰、思维缜密,这样才... 查看详情

java多线程编程

...gs.com/kenshinobiy/p/4671314.html 学习tutorialspoint的Java多线程编程后总结如下http://www.tutorialspoint. 查看详情