Wesley13 Wesley13
3年前
java 面试知识点笔记(十)多线程与并发
问:线程安全问题的主要诱因?1.存在共享数据(也称临界资源)2.存在多条线程共同操作这些共享数据解决方法:同一时刻有且只有一个线程在操作共享数据,其他线程必须等到该线程处理完数据后再对共享数据进行操作互斥锁的特征:1.互斥性:即在同一时间只允许一个线程持有某个对象锁,通过这种特性来实现多线程协调机制,这样在同一时间只有一
徐小夕 徐小夕
3年前
30分钟开发一款抓取网站图片资源的浏览器插件
前言由于业务需求,笔者要为公司开发几款实用的浏览器插件,所以大致花了一天的时间,看完了谷歌浏览器插件开发文档,在这里特地总结一下经验,并通过一个实际案例来复盘插件开发的流程和注意事项.你将收获如何快速上手浏览器插件开发浏览器插件开发的核心概念浏览器插件的通信机制浏览器插件的数据存储浏览器插件的应用场景开发一款抓取网站图片资源
Wesley13 Wesley13
3年前
MySQL 乐观锁和悲观锁
前言  1)在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和一致性以及数据库的一致性。  2)加锁是为了解决更新丢失问题更新丢失  两次更新同时进行,后一次更新覆盖了前一次更新的情况,更新丢失是数据没有保证一致性导致的。事务A查询余额,
Stella981 Stella981
3年前
Netty中粘包和拆包的解决方案
粘包和拆包是TCP网络编程中不可避免的,无论是服务端还是客户端,当我们读取或者发送消息的时候,都需要考虑TCP底层的粘包/拆包机制。TCP粘包和拆包TCP是个“流”协议,所谓流,就是没有界限的一串数据。TCP底层并不了解上层业务数据的具体含义,它会根据TCP缓冲区的实际情况进行包的划分,所以在业务上认为,一个完整的包可能会被TCP拆分成多个包
Wesley13 Wesley13
3年前
JDK核心JAVA源码解析(4)
想写这个系列很久了,对自己也是个总结与提高。原来在学JAVA时,那些JAVA入门书籍会告诉你一些规律还有法则,但是用的时候我们一般很难想起来,因为我们用的少并且不知道为什么。知其所以然方能印象深刻并学以致用。本篇文章针对堆外内存与DirectBuffer进行深入分析,了解Java对于堆外内存处理的机制,为下一篇文件IO做好准备Java堆栈内存与堆外内
Wesley13 Wesley13
3年前
Java异常处理只有Try
今天,我们将讨论一个非常重要的主题Java中的异常处理。尽管有时可能会对此主题进行过多的讨论,但并非每篇文章都包含有用且相关的信息。Java中最常见的异常处理机制通常与trycatch块关联。我们使用它来捕获异常,然后提供在发生异常的情况下可以执行的逻辑。的确,你不需要将所有异常都放在这些块中。另一方面,如果你正在研究应用程序的软
Easter79 Easter79
3年前
STM32库函数 断言机制 宏定义assert_param(expr)和assert_failed的使用方法
首先我们先了解一下,什么是断言?断言都有什么特点?断言就是我们人为定义的一个宏,用于判断一些输入参数的布尔表达式是否为预设的值的范围内,如果是就为真,否则就为假。断言就是用于检查一些函数的输入参数的合法性。一般默认情况下,断言的功能是关闭的,在debug调试模式下,将断言功能打开;在release发布模式下,将断言功能关闭,断言打开的话,会在一定程度
Stella981 Stella981
3年前
RabbitMq的一些概念,持久化、队列排他、自动删除、消息确认机制、消息ACK、消费消息的模式
一、队列持久化的概念队列的声明默认是存放到内存中的,如果rabbitmq重启会丢失,如果想重启之后还存在就要使队列持久化,保存到Erlang自带的Mnesia数据库中,当rabbitmq重启之后会读取该数据库。二、排他简单理解就是在连接关闭时是否会删除队列(无论队列中有没有消息) 三、自动删除
Stella981 Stella981
3年前
STM32库函数 断言机制 宏定义assert_param(expr)和assert_failed的使用方法
首先我们先了解一下,什么是断言?断言都有什么特点?断言就是我们人为定义的一个宏,用于判断一些输入参数的布尔表达式是否为预设的值的范围内,如果是就为真,否则就为假。断言就是用于检查一些函数的输入参数的合法性。一般默认情况下,断言的功能是关闭的,在debug调试模式下,将断言功能打开;在release发布模式下,将断言功能关闭,断言打开的话,会在一定程度
ZOS对象存储跨域资源访问的实现和使用
跨域指的是从一个域名去请求另外一个域名的资源,即跨域名请求。跨域时,浏览器不能执行其他域名网站的脚本,这是由浏览器的同源策略造成的,是浏览器施加的安全限制。同源策略是一种约定,是浏览器最核心也最基本的安全功能,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源,这是一个用于隔离潜在恶意文件的重要安全机制。