端面java线程 策略

Java学习笔记(十一) 注解和反射

注解 1. 注解入门 Annotation是从JDK5.0开始引入的新技术 Annotation的作用: 不是程序本身,可以对程序作出解释。(这一点和(comment)没什么区别) 可以被其他程序(比如:编译器等)读取 Annotation的格式: 注解是以”@注释名“在代码中存在,还可以添加一些参 ......
注解 笔记 Java

Java学习笔记(十) 多线程

进程,线程,多线程 1. Process和Thread 程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念 而进程则是执行程序的一次执行过程,它是一个动态的概念,是系统资源分配的单位 通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程,不然没有存在的意义,线程是cp ......
线程 笔记 Java

线程的任务函数可以是普通函数、类的非静态成员函数、类的静态成员函数、lambda函数、仿函数

参考:b站视频 线程的任务函数可以是普通函数、类的非静态成员函数、类的静态成员函数、lambda函数、仿函数。下面举例说明: #include <unistd.h> #include <iostream> #include <thread> // 线程类头文件。 using namespace st ......
函数 静态 成员 线程 任务

【Redis】多线程Redis的N种架构

【Redis】多线程Redis的N种架构 为什么需要多线程的Redis 在单点上利用更多的资源--热点资源 官方的多线程 只看左边部分其实还是单线程的形式, 设置io Thread的数量==》配置2~3 设置第二步也开启多线程(redis默认为写请求比较重) 实际效果不佳 ==》主线程需要分发,使用 ......
Redis 线程 架构

java学习日记20230327-注解

注解 注解(Annotation)也被称为元数据(Metadata),用于修饰解释包,类,属性,构造器,局部变量等数据信息; 和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息 在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等。在javaee ......
注解 20230327 日记 java

java第二次作业

1.输入年份月份,输出该月的天数(闰年2月29天,条件参考上机练习1) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 package aaa; impor ......
java

【Redis】线程框架和性能辩思

【Redis】线程框架和性能辩思 Redis是什么 REmote DIctionary Server 当缓存当数据库都行 与内存KV相比拓展性更强 相较于传统的MySQL等较为简单,可以通过Lua脚本完成复杂的操作 线程模型 服务器做的事情: 以TCP服务器为例,一般做法就是监听一个端口,然后接收连 ......
线程 框架 性能 Redis

C/C++ 思考:策略模式在协议解析中的应用

引出问题 在基于消息包的通信协议中,通常会通过一个id或命令名来标识该消息包,程序需要根据不同的标识进行不同的解析策略,提取出想要的内容。例如,一个典型的FTP请求命令是这样的: USER anonymous\r\n 其中,"USER"是请求命令名,"anonymous"是该命令跟着的参数,"\r\ ......
策略 模式

Java switch case语句

Javas witch case语句 switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。 语法: switch(expression){ case value: //语句 break;//可选 case value: //语句 break;//可选 defaul ......
语句 switch Java case

JAVA第二次作业

1、 输入年份月份,输出该月的天数(闰年2月29天,条件参考上机练习1) 1 import java.util.Scanner; 2 public class Main { 3 public static void main(String[] args) { 4 System.out.println ......
JAVA

Java入门4

面向对象2 访问修饰符 | | private | default | protected | public | | | | | | | | 当前类 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_che ......
Java

Java学习日记3

2023.3.28学习Java打卡 封装 禁止直接访问一个对象中数据的实际表示,应通过操作接口来访问。 程序设计要求”高内聚,低耦合“。 高内聚:类的内部数据操作细节由自己完成,不允许外部干涉。 低耦合:暴露少量的方法给外部使用。 特点: 提高程序安全性,保护数据 隐藏代码的实现细节 统一接口 增加 ......
日记 Java

java第二次作业

1.输入一个年数,再输入一个月份,求这个月的天数 package www; import java.util.Scanner; public class Wyyy { public static void main(String[] args) { // TODO Auto-generated me ......
java

java 第二次作业

1 输入年份月份,输出该月的天数(闰年2月29天,条件参考上机练习1) package zuoye1; import java.util.Scanner; public class test1 { public static void main(String[] args) { // 输入年份月份, ......
java

Java第二次作业

1 输入年份月份,输出该月的天数(闰年2月29天,条件参考上机练习1) package aaa; import java.util.Scanner; public class Taxt { public static void main(String[] args) { // TODO Auto-g ......
Java

java泛型通配符

java泛型/通配符 泛型 E - Element (在集合中使用,因为集合中存放的是元素) T - Type(表示Java 类,包括基本的类和我们自定义的类) K - Key(表示键,比如Map中的key) V - Value(表示值) N - Number(表示数值类型) ? - (表示不确定的 ......
通配符 java

调试freeradius线程池

调试线程池过程中遇到了一个return和pthread_exit 的问题; google 一下发现右如下概念 首先,return 语句和 pthread_exit() 函数的含义不同,return 的含义是返回,它不仅可以用于线程执行的函数,普通函数也可以使用;pthread_exit() 函数的含 ......
线程 freeradius

Java多线程

1.基本概念: 进程和线程:一个进程之内可以分为一到多个线程;进程是不活动的,只是作为线程的容器;进程拥有共享的资源;同一台计算机的进程通信称为 IPC。不同计算机之间的进程通信,需要通过网络,并遵守共同的协议,例如 HTTP。进程间互不影响,线程则不一定。 并行与并发:并发:线程通过上下文切换在执 ......
线程 Java

Java基础

1.面向对象三大特征: 面向对象比面向过程易拓展,易更新,易维护,相对来说性能略低 封装:对数据进行封装保护,保证外部能获得数据的同时不能随意修改数据 继承:类去获得其他类的属性和方法,并拓展自己的特征和行为 多态:要在继承,重写,父类引用指向子类的基础上,降低耦合度。很多子类在同一个父类方法的基础 ......
基础 Java

JAVA对接维特智能WIT901WIFI传感器

背景 最近有个项目需要对接传感器,将传感器的数据转发到其他设备,目前只有维特智能的WIT901WIFI传感器。 传感器长这样 配置网络 这个传感器是通过WIFI传输数据,所以第一步需要配置WIFI。 下载上位机软件 官方页面 https://wit-motion.yuque.com/wumwnr/d ......
传感器 智能 JAVA WIFI 901

class java.time.LocalDateTime cannot be cast to class java.util.Date

报错前因 直接用 'List<Map>' 接取了 mysql 传回的数据,但是后期处理日期数据时,将 LocalDateTime 类型的数据强转为 Date 处理引发的报错 问题处理 使用 LocalDateTime 强转mysql传回的日期类型数据 对 LocalDateTime 类型数据做Str ......
class java LocalDateTime cannot Date

有关快速排序-java实现

对于快排,思想是很简单的,易于理解的,关键在于代码的实现中,出现的一些问题,包括遇到的,相同大小的数的位置处理,如果使用递归防止出现无限递归地情况,想清楚其中左所引与又索引的变化: /** * 快速排序的简介写法(完美) * @param num 目标排序数组 * @param leftIndex ......
java

Java运算符

JavaSE 运算符 算术运算符:+,-,*,/,%,++(自增),--(自减) i++:先用后+1;++i:先+1后用 赋值运算符:= 扩展赋值运算符:+=,-=,*=,/= a+=b >a=a+b: ​ 可读性差,但是编译效率高,且会自动进行类型转换; ​ 当ab为基本数据类型时,a+b和b+a ......
运算符 Java

长短令牌三验证”的JWT令牌续签策略

“长短令牌三验证”的JWT令牌续签策略(兼顾安全、性能的综合性方案) 令牌使用策略概述 顾名思义,本机制下所使用的令牌分为长短两种:长令牌即过期时间较长的refresh_token,专门用于token的续签,同时刷新两种token;短令牌即过期时间较短的access_token,进行常规业务请求时使 ......
令牌 长短 策略 JWT

使用Java自己DIY一个日志框架

前言 在开发过程中我们经常会用到某种日志框架去处理日志信息,下面是我自己DIY的一个日志框架,请各位看官老爷鉴赏,如有不足,望谅解。 配置文件 log.properties log.level=DEBUG log.file=logs/log-%date%.log log.pattern=%date% ......
框架 日志 Java DIY

Java入门2

Java2 java的内存划分 程序计数器,本地方法栈,虚拟机栈,堆,方法区(:star2:) | 内存划分 | 作用 | | | | | 堆内存 | 给对象提供存放空间 | | 虚拟机栈 | 给方法提供运行空间 | | 方法区 | 存放所有类相关的数据 | | 本地方法栈 | 被native修饰的 ......
Java

Java入门3

面向对象1 面向对象,更在乎的结果,而过程的实现并不重要 IDea快捷键(基础版) | 快捷键 | 作用 | | | | | ctrl + / | 快捷注释 | | ctrl + shift + / | 多行注释 | | ctrl + d | 快速复制 | | ctrl + shift + up/d ......
Java

java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider解决方法

java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider解决方法 因为加入了jdk的第三方安全库,需要额外配置 1.下载bcprov-jdkxx-xxx.jar, 我用的库:bcpkix-jd ......

Java数据类型、标识符

JavaSE 标识符 定义 Java中用于定义名称的都是标识符。例:包名,类名,变量名,方法名等。 组成 由数字、字母、_、$、组成,可以用汉字,但是不建议。 注意 开头不可以是数字 不可以用Java关键字 见名知意,可增加可读性 大小写区分 遵守驼峰命名 ​ 类名:首字母大写,其余遵循驼峰命名 ​ ......
标识符 标识 类型 数据 Java

过期key删除策略

被动删除 当读/写一个key时,redis首先会检查这个key是否存在,如果存在且已过期,则直接删除这个key并返回nil给客户端。 定期删除 redis中有一系列的定期任务(serverCron),这些任务每隔一段时间就会运行一次,其中就包含清理过期key的任务,运行频率由配置文件中的hz参数来控 ......
策略 key