如何进行Java语言规范线程形式的分析

技术如何进行Java语言规范线程形式的分析如何进行Java语言规范线程形式的分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在一开始接触Java的时候我们

对于如何分析Java语言规范的线程形式,相信很多没有经验的人都无能为力。为此,本文总结了问题产生的原因及解决方法。希望你能通过这篇文章解决这个问题。

我们第一次接触Java的时候,并没有太关注Java语言规范,这其实是错误的。下面我们来看看:开始执行Java语言规范程序后,至少会有一个线程开始运行,运行的线程称为主线程,主线程执行输入类的main()。当main()中的所有处理完成时,主线程也完成了。

当应用程序的规模大到一定程度,程序里的多线程会以每种形式存在。以下是几个常见的范例:

1) GUI应用。

2)比较耗时的输入输出处理。

3)多个客户端。

启动线程有两种方法:

1)通过使用线程类的子类的实例来启动线程。

2)通过使用Runnable接口的实现类的实例来启动线程。

请注意,“线程实例”和“线程本身”是两个不同的部分。即使建立了thread的一个实例,Thread还没有启动,即使线程已经结束,Thread的实例也不会这样消失。

设置一个实现Runnable接口的类,将这个类的实例传递给Thread的构造函数,并调用start().这是使用Runnable接口启动线程的方法。

记住:无论哪种方式,启动一个新线程的方法总是线程类的start()。

Java语言中常见的字符串注意事项

浅析Java语言和C#语言

Java语言学习:概述

什么是OSGi:Java语言的动态模块系统

快速掌握PHP调用Java语言的方法。

使用Thread类的sleep()暂停线程的执行。当执行以下语句时,当前线程(执行该语句的线程)可以暂时停止1000 ms以上。

thread . sleep(1000);

当用synchronized关键字声明一个实例方法时,只有一个线程可以操作某个实例的这种方法。“让一个线程运行”并不意味着只有一个特定的线程可以运行,而是一次只能有一个线程可以执行。此方法称为同步方法(synchronized method)。

Synchronized instance方法就是用这个锁来做线程的共享互斥。Synchronized class方法就是利用这个类的类对象的锁来做线程的共享互斥。

Java语言规范线程的协调(这三种方法执行的前提是执行线程拥有obj的锁):

1) obj.wait()是将当前线程放入等待集中;指物体;

2) obj.notify()是从obj的等待集中唤醒一个线程;

3) obj.notifyAll()是唤醒obj的等待集中的所有线程。

被唤醒的线程仅处于等锁状态(但不再处于等待集),此时obj的锁仍在执行notify()或notifyAll()的线程手中。当被唤醒的线程被锁定时,它将在wait()之后继续执行。介绍

Java语言规范多线程程序的评量标准

安全-不要损坏物体。

生存-采取必要措施。(活性)

可重用性-可重用的类。

性能-可以快速大规模处理。

单线程执行——只有一个人可以通过这座桥。

单线程执行意味着“在一个线程中执行”。就像细木桥只能让一个人通过一样,这种模式是用来限制只能运行一根线。

在单线程执行模式中,我们通过限制只有一个线程可以同时调用unsafety(加上同步)来保护unsafety。这个必须由单线程执行的程序范围称为“临界区”。

使用单线程执行模式时,可能存在死锁的危险。

当SharedResource的字段对子类开放时,它可能会因为子类编写unsafeMethod而失去安全性。

同步的方法和同步的块,不管返回还是异常,肯定会解锁。

结论,Java语言规范中:

1)基本类型、引用类型的规范和引用都是原子操作。

2)但是long和double的指定和引用是可以分开的。

3)要在线程之间共享一个长字段或双字段,必须在synchronized中操作或声明它为volatile。

看完以上内容,你掌握了如何分析Java语言规范的线程形式了吗?如果您想学习更多技能或了解更多相关内容,请关注行业资讯频道,感谢您的阅读!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/108894.html

(0)

相关推荐

  • nodejs是一门语言吗

    技术nodejs是一门语言吗这篇文章主要讲解了“nodejs是一门语言吗”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“nodejs是一门语言吗”吧!

    攻略 2021年11月19日
  • 孙悟空的人物特点,西游记关于孙悟空性格特点的句子

    技术孙悟空的人物特点,西游记关于孙悟空性格特点的句子1、外貌孙悟空的人物特点: 身穿金甲亮堂堂,头戴金冠光映映。手举金箍棒一根,足踏云鞋皆相称。一双怪眼似明星,两耳过肩查又硬。挺挺身才变化多,声音响亮如钟磬。尖嘴咨牙弼马

    生活 2021年10月25日
  • 有志不在年高无志空长百岁,无志空活百岁上一句是什么

    技术有志不在年高无志空长百岁,无志空活百岁上一句是什么有志不在年高有志不在年高无志空长百岁,无志空活百岁出自《甘罗十二为使臣》 【解释】 意思是指只要有远大志向,就算年纪小也没事,一个没有远大志向的人,即便活到很大的岁数

    生活 2021年10月27日
  • vue 中query和pramas中的那点事

    技术vue 中query和pramas中的那点事 vue 中query和pramas中的那点事//$router : 是路由操作对象,只写对象
    //$route : 路由信息对象,只读对象
    //操作 路

    礼包 2021年11月11日
  • 提问的英文,对于价格的提问,用英语怎么说

    技术提问的英文,对于价格的提问,用英语怎么说对于价格的提问的英文:How muchmuch 读法 英 [mʌtʃ] 美 [mʌtʃ] 1、det./pron.(与不可数名词连用,尤用于否定句;或与how连用以询问数

    生活 2021年10月26日
  • Go语言基本数据类型有哪些

    技术Go语言基本数据类型有哪些这篇文章主要介绍“Go语言基本数据类型有哪些”,在日常操作中,相信很多人在Go语言基本数据类型有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go语言基本

    攻略 2021年11月4日