Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

Java中多种锁的实现详解

1、synchronized和Lock

java中有两种锁的加锁方式:一种是用于synchronized关键字,另一种是用Lock接口实现类

形象地说,synchronized关键字是自动挡,可以满足一切日常驾驶需求。但是如果你想要玩其他的骚操作,就需要手动挡—各种Lock实现类

所以如果你只是想要简单的加个锁,对性能也没有什么特别的要求,用synchronized关键字就足够了。自从Java 5 之后,才在java.util.concurrent.locks包下有了另一种方式来实现锁那就是Lock。也就是说,synchronized是Java语言内置的关键字,而Lock是一个接口,这个接口的实现类在代码层面实现了锁的功能,具体实现有兴趣可以自己研究一下哦。

Java

1、线程和进程

进程:程序的集合。一个进程往往可以包含多个线程,至少包含一个

java默认有两个线程:一个main线程,一个gc线程

线程:线程是cpu调度和执行的单位,对于java而言:Thread、Runnable、Callable

Java

Process与Thread

  • 程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念

  • 而进程则是程序的一次执行过程,它是一个动态的概念。是系统资源分配的单位

  • 通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程,不然没有存在的意义。线程是cpu调度和执行的单位。

    注意:很多线程是模拟出来的,真正的多线程是指有多个cpu,即多核,如服务器。如果是模拟出来的多线程,即在一个cpu的情况下,在同一个时间点,cpu只能执行一个代码,因为切换的很快,所以就有同时执行的错觉。

Java

IP

ip地址:InetAddress(java类)

  • 唯一定位一台网络上计算机
  • 127.0.0.1:本机localhost
  • IP地址的分类
    • ipv4、ipv6
      • IPV4 127.0.0.1,4个字节组成。0~255,42亿;30亿在北美。4亿在亚洲。2011年用尽
      • IPV6 128位,8个无符号整数
    • 公网(互联网)-私网(局域网)
      • ABCD类地址
      • 192.168.xx.xx,专门给组织内部使用
Java

异步任务

1.首先在springboot工程里添加一个service

Shiro简介

什么是Shiro

Apache Shiro是Java的一个安全框架,提供了认证、授权、加密和会话管理等功能。

  • Apache Shiro是一个Java的安全(权限)框架。
  • Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。
  • Shiro可以完成,认证,授权,加密,会话管理,Web集成,缓存等。
  • 下载地址: http://shiro.apache.orgl

1. 首先在pom文件中导入Mybatis所需要的依赖

为什么要实现热部署

当我们在写项目时,每一次我们修改代码的时候就得重新启动项目,重新部署,这个就很烦而且相当的浪费时间,这时候热部署的出现都很舒服了。

1、spring优点

  1. Spring是一个开源免费的框架,容器
  2. spring是一个轻量级的框架,非侵入式
  3. 控制反转IOC,面向切面AOP
  4. 对事物的支持,对框架的支持

一句话概括:是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器(框架)。

JVM学习笔记

关于jvm面试常问

  • 请你谈谈你对jvm的理解?java8虚拟机和之前的变化更新?
  • 什么是OOM(内存溢出),什么是栈溢出StackOverFlowError?怎么分析?
  • JVM的常用调优参数有哪些?
  • 内存快照如何抓取,怎么分析Dump文件?
  • 谈谈JVM中类加载器的认识
Java