首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
小林专题
小林图解系统-五.进程管理 5.4.怎么避免死锁?
死锁的概念 多线程编程中国,为了防止多线程竞争共享资源而导致数错乱,都会在操作共享资源之前加上互斥锁,只有成功获得锁的线程,才能操作共享资源,获取不到锁的线程就只能等待,直到锁被释放。 当两个线程为了保护两个不同的共享资源而使用了两个互斥锁,那么这两个互斥锁应用不当的时候,会造成两个线程都在等待对方释放锁,在没有外力的作用下,这些线程会一直相互等待,没办法继续运行,这种情况就是发生了死锁。
阅读更多...
小林图解系统-三、操作系统结构
Linux 内核 vs Windows 内核 内核 作为应用连接硬件设备的桥梁,保证应用程序只需要关心与内核交互,不需要关心硬件的细节 内核具备四个基本能力: 管理进程、线程,决定哪个进程、线程使用CPU,也就是进程调度的能力;管理内存,决定内存的分配和回收,内存管理能力管理硬件设备,为进程与硬件设备之间提供通信能力,硬件通信能力提供系统调用,如果应用程序要运行更高权限运行的服务,
阅读更多...
小林coding图解计算机网络|TCP篇06|如何理解TCP面向字节流协议、为什么UDP是面向报文的协议、如何解决TCP的粘包问题?
小林coding网站通道:入口 本篇文章摘抄应付面试的重点内容,详细内容还请移步:小林coding网站通道 文章目录 如何理解UDP 是面向报文的协议如何理解字节流如何解决粘包固定长度的消息 特殊字符作为边界自定义消息结构 如何理解UDP 是面向报文的协议 之所以会说 TCP 是面向字节流的协议,UDP 是面向报文的协议,是因为操作系统对 TCP 和 UDP 协议的发送方的机
阅读更多...
小林制药含红曲成分保健品疑致2死106人住院:红曲究竟是何方神圣?
一、红曲引发公众担忧二、红曲的生成及其特性三、红曲对人体的潜在风险四、小林制药及其在中国市场的产品情况 参考资料:三好夫人养生网 一、红曲引发公众担忧 近日,小林制药的一款含有红曲成分的保健品被疑似引发严重健康风险,导致两人死亡和106人住院治疗。这一事件使得红曲这一在食品和保健品领域广泛应用的传统中药材备受关注。那么,红曲究竟是什么?它如何生成?对人体有哪些潜在副作用呢? 二、红曲的
阅读更多...
VBScript脚本语言讲义(刘小林)
先感谢本文的原作者 刘小林老师 TypeName及VarType函数介绍,示例程序如下: 可用 VarType 函数来返回某个数据的 Variant 子类型,如下面的代码: DimstrInput,strVarType,strTypeName strInput="helloworld" MsgBoxstrInput strVarType=VarType(strInput) MsgB
阅读更多...
MySQL事务--八股文(小林coding个人提炼版本)
1.事务的特性有哪些 原子性、隔离性、一致性、持久性 2.并发事务会引发什么问题,他们的概念是什么 脏读、不可重复读、幻读。 脏读:读到了其他事务还未提交的数据 不可重复读:在一个事务上,查询的数据不一致。 幻读:在一个事务上,查找的数据的数量不一样 3.事务的隔离级别有哪些以及他们的概念,还有他们发生的现象? 读未提交:他的操作对所有事务可见 读已提交:只有提交后,其数
阅读更多...
企鹅的出处 | 小林和腾讯不得不说的故事(四)
前面说到同时期有很多即时通讯软件,其中有一款叫 OMMO 的做得很不错,小林的好朋友兼老同事 dodo(祝军)参与了那次创业。小林也差点被拉入伙,不过倒不是因为 dodo,主要那时候还不认识 dodo,后来做 DoNews 的时候才认识了 dodo,小林是 DoNews 第一版的开发者,而 dodo 则是 DoNews 的首席设计师。 拉小林参与的那个人叫 koke(孙洁鸣),早期应该是
阅读更多...
Redis 的常用基本全局命令【小林优选】
前言 Redis 常用的有 5 种数据结构,字符串,列表,哈希表,集合,有序集合,每一种数据结构都有自己独特的命令,但也有些通用的全局命令,本文所提到的是最基本的命令,Redis 的命令非常的多,想了解更多推荐去官方文档了解 关于 Redis 的安装,配置和启动,推荐看Centos 安装 redis【最简单】 将 Redis 启动以后,要输入
阅读更多...
小林Coding_操作系统_读书笔记
一、硬件结构 1. CPU是如何执行的 冯诺依曼模型:中央处理器(CPU)、内存、输入设备、输出设备、总线 CPU中:寄存器(程序计数器、通用暂存器、指令暂存器),控制单元(控制CPU工作),逻辑运算单元(运算) 总线:控制总线(发信号),内存总线(指定内存地址),数据总线(内存读写) CPU 执行程序的过程: 第一步,CPU读取“程序计数器”中指令的地址,然后“控制单元”操作“地址总
阅读更多...
Spring 声明式事务 @Transactional(详解)【面试重点,小林出品】
关于 @Transactional 注解的基本使用,推荐看Spring 声明式事务 @Transactional(基本使用) 概述 本篇博客主要学习 @Transactional 注解当中的三个常⻅属性: 1. rollbackFor:异常回滚属性.指定能够触发事务回滚的异常类型.可以指定多个异常类型 2. Isolation
阅读更多...
小林求职记(一):面试官:什么是大事务?小林哥:就是 很大...的...事务??
最近疫情期间跳槽不易,在外包公司工作了5年的小林在某直聘软件上边投递了好几家互联网公司的java工程师岗位。在经历了快半年的无人问津之后,终于被一家公司的技术leader叫去了面试。 到了南山科技园的某栋大楼地下,看了下时间,距离面试约定时间还有大概15分钟。小王慢慢悠悠地步入了这栋科技大楼,在前台坐下后,过了不久,面试官便赶来了。 面试官 你好,请自我介绍一下吧。 小林 你好,我是xx
阅读更多...
618蓝牙耳机推荐:数码小林盘点618最值得买的蓝牙耳机
蓝牙耳机的火爆程度已经超出我们的想象,它的存在不仅给我们带来生活上的便捷甚至是工作效率的提高,让我们对蓝牙耳机选择性越来越高。这不,马上又到了一年一度的618了,最近想入手的蓝牙耳机但又不知道选哪个好的小伙伴,可以直接看看下面这几款目前最值得入手的音质蓝牙耳机呀。 1、南卡Lite Pro2蓝牙耳机 价格:399 音频解码:APTX、AAC、SBC NANK南卡是目前国内一直潜心打造全
阅读更多...
leetcode 315. 计算右侧小于当前元素的个数(hard)【小林优质解法】
链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 代码: class Solution {int[]counts; //用来存储结果int[]index; //用来绑定数据和原下标int[]helpNums; //用于辅助排序 nums 数组int[]helpIndex; //用于辅助排序 index 数组public List<Integer> countSma
阅读更多...
leetcode LCR 170. 交易逆序对的总数(hard)【小林优质解法】
链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 代码: class Solution {int[]help; //归并排序的辅助数组public int reversePairs(int[] record) {int length=record.length;// help 数组的实例化写在递归外面,可以节省很多资源help=new int[length];retur
阅读更多...
【概率题】小李、小黄、小林三个人互相决斗,谁存活的概率最高?
文章目录 一、题目描述二、模拟结果1. 场景一:前一个人按顺序向后一个人射击2. 场景二:每个人射击的目标都是随机的3. 场景三:每个人射击的目标都是存活的人当中命中率最高的 三、总结四、源码 一、题目描述 总是在贴吧里面刷到这个题目,但是大家对这个问题的答案五花八门,博主概率论也学得不太行,懒得算,于是就用计算机模拟了这个问题。由题目中并没有明确射击的方法,故博主
阅读更多...
[小林coding]4.1TCP三次握手四次挥手笔记_1012
1.tcp头部格式: 序列号:用来解决网络包收发的顺序问题 确认应答号:解决丢包问题(一般都是+1) 2.建立一个 TCP 连接是需要客户端与服务端达成上述三个信息的共识 Socket:由 IP 地址和端口号组成(IP源地址,源端口,IP目的地址,目的端口) 序列号:用来解决乱序问题等 窗口大小:用来做流量控制 3.TCP/UDP区别 UDP头部格式: 1.连接:TCP需要连接,
阅读更多...