当前位置: 首页 > news >正文

个体工商户经营范围做网站如何进行网站推广?网站推广的基本手段有哪些

个体工商户经营范围做网站,如何进行网站推广?网站推广的基本手段有哪些,宜昌网站开发,html5手机网站模板1 JMM(Java Memory Model) 1 概述 Java内存模型(Java Memory Model简称JMM)是一种抽象的概念,并不真实存在,它描述的一组规则或者规范。通过这些规则、规范定义了程序中各个变量的访问方式。jvm运行的程序的实体是线程,而每个线程运行时&am…

1 JMM(Java Memory Model)

1 概述

Java内存模型(Java Memory Model简称JMM)是一种抽象的概念,并不真实存在,它描述的一组规则或者规范。通过这些规则、规范定义了程序中各个变量的访问方式jvm运行的程序的实体是线程,而每个线程运行时,都会创建一个工作内存(也叫栈空间),来保存线程所有的私有变量。而JMM内存模型规范中规定所有的变量都存储在主内存中,而主内存中的变量是所有的线程都可以共享的,而对主内存中的变量进行操作时,必须在线程的工作内存进行操作,首先将主内存的变量copy到工作内存,进行操作后,再将变量刷回到主内存中。所有线程只有通过主内存来进行通信。

  1. JMM描述的是对程序中变量访问方式的规则规范

  2. JVM运行程序的实体是线程,每个线程有其工作空间,用于存储私有变量

  3. JMM规定所有的变量需存储在主内存中,主内存的变量是所有线程共享的

  4. 对主内存的变量操作,需要将主内存变量copy到线程的工作空间

  5. 在线程工作空间操作完之后,刷回主内存

2 可见性,原子性与有序性

1 原子性

原子性指的是一个操作是不可中断的,即使是在多线程环境下,一个操作一旦开始就不会被其他线程给打断。

在java中,对基本的数据类型的操作都是原子性的操作,但是要注意的是对于32位系统的操作对于long、double类型的并不是原子性操作(对于基本数据类型,byte,short,int,float,boolean,char读写是原子操作)。因为对于32位的操作系统来说,每次读写都是32位,而doubel、long则是64位存储单位。就会导致一个线程操作完前面32位后,另一个线程刚好读到后面的32位,这样一来一个64位被两个线程分别读取。

2 可见性

可见性指的是当一个共享变量被一个线程修改后,其他线程是否能够立即感知到。对于串行执行的程序是不存在可见性,当一个线程修改了共享变量后,后续的线程都能感知到共享变量的变化,也能读取到最新的值,所以对于串行程序来讲是不存在可见性问题。

对于多线程程序,就不一定了,前面分析过对于共享变量的操作,线程都是将主内存的变量copy到工作内存进行操作后,在赋值到主内存中。这样就会导致,一个线程改了之后还未回写到主内存,其余线程就无法感知到变量的更新,线程之间的工作内存是不可见的。另外指令重排序以及编译器优化也会导致可见性的问题。

3 有序性

有序性是指对于单线程的代码,我们总是认为程序是按照代码的顺序进行执行,对于单线程的场景这样理解是没有问题,但是在多线程情况下, 程序就会可能发生乱序的情况,编译器编译成机器码指令后,指令可能会被重排序,重排序的指令并不能保证与没有排序前的保持一致。

在java程序中,倘若在本线程内,所有的操作都可视为有序性,在多线程环境下,一个线程观察另外一个线程,都视为无顺序可言。

 3 JMM如何解决原子性&可见性&有序性

1 原子性问题

除了jvm自身提供的对基本类型的原子性操作以外,可以通过synchronized和Lock实现原子性。synchronized与lock在同一时刻始终只会存在一个线程访问对应的代码块。

2 可见性问题

volatile关键字保证了可见性。当一个共享变量被volatile修饰时,它会保证共享变量修改的值立即被其他线程可见,即修改的值立即刷新到主内存,当其它线程去需要读取变量时,从主内存中读取。synchronized和Lock也保证了可见性。因为同一时刻只有一个线程能访问同步代码块,所以是能保证可见性。

3 有序性问题

volatile关键字保证了有序性,synchronized和Lock也保证了有序性(因为同一时刻只允许一个线程访问同步代码块,自然保证了线程之间在同步代码块的有序执行)。

2 对象内存布局

1 对象头区

  1. 对象标记

    • 锁标记

    • 是否偏向

    • hashCode值

    • 对象分代年龄 ✨对象头Mark区四位二进制:0000-1111 --> 最多15轮GC

  2. 类元指针: 指向方法区中的类元信息 java底层实现反射的基础

  3. 数组长度

2 实例数据区

真正属性信息的值

3 对齐填充区

为了保证对象是8字节的倍数

http://www.fp688.cn/news/146032.html

相关文章:

  • 海报模板免费下载网站百度手机助手下载苹果版
  • 荣成住房和城乡建设部网站百度账号申请注册
  • cdr做图时怎么找到网站的页面seo是什么意思
  • o2o网站制作网站关键词优化工具
  • wordpress连接memcached优化设计一年级下册数学答案
  • 北京手机网站设计搜索引擎优化介绍
  • 网站内容建设注意事项沈阳头条今日头条新闻最新消息
  • 做网站设计注意什么细节网站开通
  • 做网站有哪些注意事项品牌宣传
  • 建国外网站百度竞价开户公司
  • 表格我做视频网站中国免费广告网
  • 用什么软件做网站hao网络广告营销有哪些
  • 做视频网站需要哪些条件重庆网站推广专家
  • 网站的图书资源建设百度识图查另一半情头
  • 备案增加网站获客软件排名前十名
  • 固安建设局网站湖南seo排名
  • 怎么做韩剧网站的翻译网图搜索识别
  • 中国菲律宾会打仗吗现在搜索引擎优化搜索优化
  • 网站备案 服务内容百度查看订单
  • 建设银行网站怎么看不见余额链接提交工具
  • 蛋糕网站建设的目的营销策略有哪些
  • 中国商标自助查询百度关键词快速优化
  • 新乡商城网站建设价格制作一个网站步骤
  • 网络在线培训网站建设方案怎么做好网络营销推广
  • 中国十大网站开发公司竞价培训班
  • 科学城做网站公司培训心得简短200字
  • 天一建设网站成都私人网站建设
  • 大型门户网站建设运营青岛seo整站优化
  • 荣盛科技网站建设对网络推广的理解
  • 网站建设及运营 多少钱全国疫情最新情况公布