线程 原理 方法java

c++ 程序通用多线程单例设计 c++ web 框架设计经验谈

设计 c++ web 框架时候,想要一个框架缓存类,很多通用缓存类是用字符保存,作为框架内置就不要序列和反序列了,因为框架内部使用。 想给自己的paozhu c++ web 框架添加缓存类,参考了springboot 于是确定用单例设计模式缓存类模板。 c++11后静态变量已经统一为线程安全了,网络 ......
经验谈 线程 框架 经验 程序

不同程序集,名称空间类名和方法签名都一样的方法,如何调用

有时候,你可能会遇到这样的问题,不同程序集,名称空间类名和方法签名都一样的方法,如何调用。本文将介绍如何通过别名的方式来解决这个问题。 ......
方法 类名 名称 程序 空间

微软出品自动化神器【Playwright+Java】系列(九)多线程、重定向、弹出新窗口、截图、新页面、录制、页面对象模式操作

写在前面 关于Playwright系列的文章,真的很久没有写了,今天一个不小心官方API部分过完了,下面将为大家逐一演示,感兴趣的同学可以自行动手练习。 API部分 多线程 直白点说就是多线程下Playwright的使用,示例代码如下: package org.example; import com ......
页面 神器 线程 截图 Playwright

【多线程与高并发】- 线程基础与状态

所谓线程就是操作系统(OS)能够进行运算调度的最小单位,是一个基本的CPU执行单元,也是执行程序流的最小单元。能够提高OS的并发性能,减小程序在并发执行时所付出的时空开销。线程是进程的一个实体,是被系统独立调度和分派的基本单位。 ......
线程 状态 基础

【多线程与高并发】- 浅谈volatile

volatile是Java语言中的一种轻量级的同步机制,它可以确保共享变量的内存可见性,也就是当一个线程修改了共享变量的值时,其他线程能够立即知道这个修改。 ......
线程 volatile

【多线程与高并发】- synchronized锁的认知

synchronized 是 Java 语言的一个关键字,它允许多个线程同时访问共享的资源,以避免多线程编程中的竞争条件和死锁问题。 ......
线程 synchronized

写给准备跳槽的小伙伴们的设计模式——工厂方法设计模式

概述 工厂方法模式(FactoryMethod),定义一个创建产品对象的工厂接口,让工厂子类决定实例化那一个产品类。我们把被创建的对象称为“产品”,把创建产品的对象称为“工厂”。如果要创建的产品不多,只要一个工厂类就可以完成,这种模式叫“简单工厂模式”,它不属于 23 种经典设计模式,它的缺点是增加 ......
设计模式 模式 小伙伴 小伙 工厂

精华推荐 |【算法数据结构专题】「延时队列算法」史上非常详细分析和介绍如何通过时间轮(TimingWheel)实现延时队列的原理指南

时间轮的介绍 时间轮(TimeWheel)是一种实现延迟功能(定时器)的精妙的高级算法,其算法应用范围非常广泛,在Java开发过程中常用的Dubbo、Netty、Akka、Quartz、ZooKeeper 、Kafka等各种框架中,各种操作系统的定时任务crontab调度都有用到,甚至Linux内核 ......

Nacos服务发现原理分析

微服务将自己的实例注册到nacos注册中心,nacos服务端存储了注册列表,然后通过ribbon调用服务,具体是如何调用?如果nacos服务挂了,还能正常调用服务吗?调用的服务列表发生变化,调用方是如何感知变化的?带着这些问题,来探索一下服务发现的原理。 版本 2.1.1 Nacos Server: ......
原理 Nacos

SPA路由实现的基本原理

1. SPA路由实现的基本原理 前端单页应用实现路由的策略有两种,分别是 基于hash 和 基于 History API 基于hash 通过将一个 URL path 用 # Hash 符号拆分。— 浏览器视作其为虚拟的片段。 最早前端路由的实现就是 基于 location.hash 来实现的, 有这 ......
路由 原理 SPA

Java 调用 PaddleDetection 模型

文章地址 介绍 训练好的模型要给业务调用,deepjavalibrary/djl:Java 中与引擎无关的深度学习框架 (github.com) 可以完成这件事,它支持使用 Java 调用 PyTorch、TensorFlow、MXNet、ONNX、PaddlePaddle 等引擎的模型(也支持部分 ......
PaddleDetection 模型 Java

Quill编辑器实现原理初探

简介 从事前端开发的同学,对富文本编辑器都不是很陌生。但是大多数富文本编辑器都是开箱即用,很少会对其实现原理进行深入的探讨。假如静下心去细细品味,会发现想要做好一款富文本编辑器,需要对整个前端生态有较深入的理解。在某种意义上说,富文本编辑器是前端一个集大成者。 富文本编辑器根据其实现方式,业内将其划 ......
编辑器 原理 Quill

RxJava 异常时堆栈显示不正确?解决方法都在这里

本文首发我的博客,github 地址 大家好,我是徐公,今天为大家带来的是 RxJava 的一个血案,一行代码 return null 引发的。 前阵子,组内的同事反馈说 RxJava 在 debug 包 crash 了,捕获到的异常信息不全。(即我们捕获到的堆栈没有包含我们自己代码,都是一些系统或 ......
堆栈 方法 RxJava

Python核对遥感影像批量下载情况的方法

本文介绍批量下载遥感影像时,利用Python实现已下载影像文件的核对,并自动生成未下载影像的下载链接列表的方法~ ......
遥感 影像 情况 方法 Python

Python自动合并Word文件同时添加分页符的方法

本文介绍基于Python,实现对多个Word文档加以自动合并,并在每次合并时按要求增添一个分页符的方法。 现有多个Word文档文件,需将其按名称顺序合并为一个新的Word文件,且需保证每一次合并时,都另起一页(即新的Word文件一页中,不能出现两个及以上的原本单个Word文件的内容)。 一般的,实现 ......
同时 文件 方法 Python Word

HTTPS基础原理和配置 - 1

近期又碰到了SSL相关的事情, 就心血来潮开个新专题 - 《HTTPS基础原理和配置》 本文是第一篇文章, 主要介绍SSL TLS加密协议的相关内容。 加密协议历史概要 SSL TLS加密协议其实并没有很长的历史,1995年网景发布了SSL v2.0,这也是web加密的开始。这使得电子商务领域,人们 ......
原理 基础 HTTPS

HTTPS基础原理和配置-2

〇、概述 作为概述,以下是本文要讲的内容。HTTPS 是什么? 每个人都可能从浏览器上认出 HTTPS,并对它有好感。然后再讲一遍基础知识,再详细讲一下协议版本,密码套件(Cipher Suites),本文的重点会落在如何配置 NGINX,让你的网站使用 HTTPS 服务。 除此之外,还有一个使用 ......
原理 基础 HTTPS

HTTPS基础原理和配置-3

书接上文:HTTPS 基础原理和配置 - 2,接下来介绍: 配置 NGINX 后端 HTTPS 检查配置 配置 HSTS OCSP Stapling 重要部分来了。如何使用这些选项并配置NGINX? 一、NGINX 的 HTTPS 配置 这里有一些基本的原语(或叫做指令),你可以使用:ssl_cer ......
原理 基础 HTTPS

《深入理解java虚拟机》第七章读书笔记——虚拟机类加载机制

系列文章目录和关于我 一丶虚拟机类加载机制是什么 java虚拟机将描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可用被虚拟机直接使用的java类型。 二丶类加载时机 1.什么时候会触发虚拟机的类类加载昵? 遇到new(使用new关键字实例化对象),getstat ......
机制 笔记 java

我有一篇Java Stream使用手册,学了就是你的了!

原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。 简介 日常编程工作中,Java集合会经常被使用到,且经常需要对集合做一些类似过滤、排序、对象转换之类的操作。 为了简化这类操作,Java8添加了一套新的Stream API,使用方式就像写SQL一样,大大简化了这 ......
手册 就是 Stream Java

线程私有变量ThreadLocal详解

本文已收录至Github,推荐阅读 👉 Java随想录 微信公众号:Java随想录 CSDN: 码农BookSea 烈火试真金,逆境试强者。——塞内加 什么是ThreadLocal 首先看下ThreadLocal的使用示例: public class ThreadLocalTest { priva ......
线程 变量 ThreadLocal

修改ctags让fzf.vim插件显示C,C++方法声明的标签

背景 在 vim 中使用 fzf.vim 插件可以进行方便的搜索文件, 源码TAG, GIT 记录等, 最近抽空看了下 BTags 命令在 c, c++ 文件中, 无法显示头文件中的函数声明 标签问题. 比如在头文件中有如下一个函数声明, 使用 BTags 命令是无法显示出这个函数原型的. /* 函 ......
插件 标签 方法 ctags fzf

使用java.util.Timer实现定时任务,详解Thread.sleep() in a loop, probably busy-waiting问题

很多时候,我们需要定时任务实现一些诸如刷新,心跳,保活等功能。这些定时任务往往逻辑很简单,使用定时任务的框架(例如springboot @Scheduled)往往大材小用。 下面是一个定时任务的典型写法,每隔30s发送心跳 public static void main(String[] args) ......
busy-waiting probably 任务 waiting Thread

Java ”框架 = 注解 + 反射 + 设计模式“ 之 注解详解

Java ”框架 = 注解 + 反射 + 设计模式“ 之 注解详解 每博一文案 刹那间我真想令时光停住,好让我回顾自己,回顾失去的年华,缅怀哪个穿一身短小的连衣裙 和瘦窄的短衫的小女孩。让我追悔少年时代,我心灵的愚钝无知,它轻易地错过了我一生中本来 可以获得欢乐和幸福。 —————— 《平凡的世界》 ......
注解 设计模式 框架 模式 Java

Java 文本检索神器 "正则表达式"

Java 文本检索神器 "正则表达式" 每博一文案 在我们短促而又漫长的一生中,我们在苦苦地寻找人生的幸福,可幸福往往又与我们失之交臂, 当我们为此而耗尽宝贵的。青春年华,皱纹也悄悄地爬上了眼角的时候,我们或许才能悄悄懂得生活实际上意味 着什么。 —————— 《平凡的世界》 叶赛宁的诗,不惋惜,不 ......
正则 表达式 神器 quot 文本

Java 优化:读取配置文件 "万能方式" 跨平台,动态获取文件的绝对路径

Java 优化:读取配置文件 "万能方式" 跨平台,动态获取文件的绝对路径 每博一文案 往事不会像烟雾似的飘散,将永远像铅一般沉重地浇铸在心灵的深处。 不过,日常生活的纷繁不会让人专注地沉湎于自己的痛苦 不幸,即使人的心灵伤痕累累,也还得要去为现实中的生存和发展而挣扎。 —————— 《平凡世界》 ......
文件 quot 路径 方式 动态

微机原理与系统设计笔记6 | 存储器系统设计

本部分介绍存储器及其扩展方法,基本的存储器芯片功能,8088系统的存储器扩展设计、8086系统的存储器扩展设计以及译码电路的手写画图。 ......
系统 存储器 微机 原理 笔记

Java 集合中的排序算法浅析

排序是一个Java开发者,在日常开发过程中随处可见的开发内容,Java中有丰富的API可以调用使用。在Java语言中,作为集合工具类的排序方法,必定要做到通用、高效、实用这几点特征。主要探讨java中排序方法所使用的算法,以及那些是值得我们学习和借鉴的内容。文中如有理解和介绍的错误,一起学习,一起探... ......
算法 Java

C# 委托原理、事件原理刨析和对比

C# 委托原理刨析,和事件原理刨析,外加两者对比,应该是目前全网讲的最细的帖子了吧。从委托介绍=》基本使用=》框架应用=》原理分析=》事件原理分析=》两者对比 ......
原理 事件

vue原理:diff、模板编译、渲染过程等

一、虚拟DOM: 因为DOM操作非常消耗性能,在操作DOM时,会出现DOM的回流(Reflow:元素大小或者位置发生改变)与重绘(元素样式的改变)使DOM重新渲染。 现在的框架Vue和React很少直接操作DOM,因为两者都是数据驱动视图,只会对数据进行增删改的操作 因此,二者使用虚拟DOM(vdo ......
原理 模板 过程 diff vue