一、概要 不可变(immutable), 即对象一旦被创建,值就不能被改变,每次改变都会产生一个新对象。 不可变对象如下: string ImmutableStack ImmutableQueue ImmutableList ImmutableHashSet ImmutableSortedSet I ...
概念回顾 进程与线程 进程:程序的一次执行,它占有一片独有的内存空间。 线程:进程内的一个独立的执行单元。是程序执行的一个完整流程。是CPU的最小调度单元。 多进程运行:一个应用程序可以启动多个实例运行 多线程:一个进程内,同时有多个线程运行。 应用程序必须运行在某个进程的某个线程上;一个进程中至少 ...
分类:
编程语言 时间:
2021-06-21 21:11:44
阅读次数:
0
欢迎来到《并发王者课》,本文是该系列文章中的第16篇。
在前面的文章中,我们提到了锁的可重入问题,并作了简单介绍。鉴于锁的可重入是一个重要概念,所以本文把拿出来做一次单独讲解,以帮助你彻底理解它。 ...
分类:
其他好文 时间:
2021-06-21 20:26:26
阅读次数:
0
保护单元格 选中整张工作表 点击右键——设置单元格格式——保护工作表——取消锁定 选中你要保护的单元格区域——单击右键——设置单元格格式——保护单元格——勾选锁定 开始菜单下——格式——保护工作表 设置密码 设置被保护的单元格可以使用的操作 重复输入密码 取消保护 开始菜单下——格式——保护工作表 ...
分类:
其他好文 时间:
2021-06-21 20:02:42
阅读次数:
0
Redis为单进程单线程模式,采用队列模式将并发访问变成串行访问,且多客户端对Redis的连接并不存在竞争关系Redis中可以使用SETNX命令实现分布式锁。 将 key 的值设为 value ,当且仅当 key 不存在。 若给定的 key 已经存在,则 SETNX 不做任何动作 解锁:使用 del ...
分类:
其他好文 时间:
2021-06-20 18:31:21
阅读次数:
0
从表种看出,只有InnoDB和BDB引擎是事务安全表,其它引擎是非事务安全表。在创建表时不指定引擎时,默认会是 InnoDB 引擎。 SHOW ENGINES; 默认情况下,表锁和行锁是自动获取的,不需要额外的命令。但有的情况下,用户需 UN要明确的进行锁表或者进行事务的控制以便保证整个事务的完整性 ...
分类:
其他好文 时间:
2021-06-20 18:17:21
阅读次数:
0
单例模式 饿汉:在定义instance时new对象 懒汉:在getInstance方法里new对象,默认getInstance方法不是线程安全的,需要加synchronized修饰符保证线程安全 应用示例:java.lang.Runtime对象 多例模式 应用示例:数据库连接池 ...
分类:
其他好文 时间:
2021-06-20 17:37:32
阅读次数:
0
与其他编程语言一样在并发环境下如不对多个goroutine(线程)访问或修改的共享资源元素的进行控制,让进入临界区的对象互斥。就可能会出现数据异常情况; 一个非线程安全对象如下,如不对Id的访问进行控制,多个goroutine进行更新Id字段是就会出现数据不一致的情况,如下示例: type Conf ...
分类:
其他好文 时间:
2021-06-19 19:07:27
阅读次数:
0
在Java的并发包中,存在着许多高效的并发工具类,它优于synchronized关键字,在JDK中提供了一个ConcurrentLinkedQueue工具类实现了高效的并发读写工具类,该工具类具有很高效的性能,因此,本片文章笔者将通过解读ConcurrentLinkedQueue源码的方式探究该数据 ...
分类:
其他好文 时间:
2021-06-19 18:50:41
阅读次数:
0
用户组管理 1 用户管理命令 1 useradd # 添加用户 2 userdel # 删除用户 3 usermod # 修改用户信息 ? # 创建用户 [root@localhost ~]# useradd user1 # 查看用户 [root@localhost ~]# id user1 uid ...
分类:
其他好文 时间:
2021-06-19 18:44:29
阅读次数:
0