线程 笔记java 11

算法学习笔记(-∞): 信息学,学习和考试,我当如何?

杂项2 此杂项主要记录关于考试和竞赛习惯的部分内容,与知识本身无关。 考试 习惯使用 vim 和命令行,在 NOI Linux 下测试。 写代码的时候就应该加上调试语句,每写一部分应当立即测试有没有挂。 很多时候很可能忽略 \(0\) 的情况,需要大力注意边界,这在数学中同样适用。 很多时候,题面的 ......
算法 笔记 信息

算法学习笔记(32): 格路径与计数

格路径与计数 这属于组合数学里面的东西,单独拿出来谈上一谈。 最简单的计数:从 \((0, 0)\) 只能向右或者向左走到 \((n, m)\)。 首先有一个很 naive 的 DP:\(f_{i, j} = f_{i - 1,j} + f_{i, j - 1}\)。 然而如果我们稍微变换一下坐标, ......
算法 路径 笔记 32

详述Java内存屏障,透彻理解volatile

一般来说内存屏障分为两层:编译器屏障和CPU屏障,前者只在编译期生效,目的是防止编译器生成乱序的内存访问指令;后者通过插入或修改特定的CPU指令,在运行时防止内存访问指令乱序执行。 下面简单说一下这两种屏障。 1、编译器屏障 编译器屏障如下: asm volatile("": : :"memory" ......
屏障 volatile 内存 Java

一条命令暂停更新Win11一万天

此方法适用于 Win11 和 Win10,无需下载软件,不会影响微软商店使用。 按 Win + X 键选择 Windows PowerShell (管理员) 注:Win键就是键盘左下角CTRL键右边那个键 按右键粘贴这行代码后回车即可: reg add "HKEY_LOCAL_MACHINE\SOF ......
命令 Win 11

【学习笔记】网络流

一些概念 \(\bf{\underline{网络}}\):是一个特殊的有向图 \(G=(V,E)\),它包含: 源点 \(s\),汇点 \(t\)\((s \ne t)\)。 每条边 \(e(u,v)\) 都有一个容量 \(c(u,v)\)。 \(\bf{\underline{流}}\):就像水流, ......
笔记 网络

读图数据库实战笔记02_图数据建模

1. 概念 1.1. 实体 1.1.1. 通常用名词来表示 1.1.2. 描述一个领域中的事物或者事物类型 1.1.2.1. 汽车 1.1.2.2. 用户 1.1.2.3. 地理位置 1.1.3. 在逻辑模型和技术实现过程中,实体通常会变成“顶点” 1.2. 关系 1.2.1. 用动词(或动词短语) ......
数据 实战 数据库 笔记 02

《信息安全系统设计与实现》第八周学习笔记

第四章 并发编程 并行计算 是一种计算方案,它尝试使用多个执行并行算法的处理器更快速的解决问题 并行性与并发性 并行算法只识别可并行执行的任务。CPU系统中,并发性是通过多任务处理来实现的 线程 线程的原理 某进程同一地址空间上的独立执行单元 线程的优点 线程创建和切换速度更快 线程的响应速度更快 ......
笔记 系统 信息

面向对象学习笔记3

构造与析构函数 生命从出生到死亡,拥有它的一生,对象也是如此。 构造与析构函数,则见证了一个对象的创生与消亡。 对象的初始化与构造函数 初始化 Background Information: 在 C++ 中, 为了提高效率,申请内存之后并不会对内存所占的单元进行清空操作,所以初始化这件事就显得尤为重 ......
对象 笔记

学习笔记7

第7章 并发编程 线程 线程创建和终止: 可以使用pthread库中的函数来创建和终止线程。线程可以通过系统调用函数fork()在父进程中创建,也可以通过创建新的进程来创建线程。 线程调度: Linux操作系统会根据一定的算法对线程进行调度,以实现并发执行。线程调度通常包括时间片轮转、优先级调度等机 ......
笔记

学习笔记7

第4章 并发编程 一、知识点归纳 并行计算导论 顺序算法与并行算法 begin-end cobegin-end 并行性与并发性 线程 原理 优点 线程创建和切换速度更快 线程的响应速度更快 线程更适合并行计算 缺点 线程需要来自用户的明确同步 许多库函数可能对线程不安全 在单CPU系统上,使用线程解 ......
笔记

《信息安全系统设计与实现》学习笔记7

第四章 并发编程 并行计算 要求解某个问题,先要设计一种算法,描述如何一步步地解决问题,然后用计算机程序以串行指令流的形式实现该算法。在只有一个 CPU的情况下,每次只能按顺序执行某算法的一个指令和步骤。但是,基于分治原则(如二又树查找和快速排序等)的算法经常表现出高度的并行性,可通过使用并行或并发 ......
笔记 系统 信息

Java List 添加元素要用拷贝

学Java遇到一个坑,那就是往ArrayList(别的collection应该也类似)中添加元素时,如果这个元素后面又改变了,之前添加的值也会被改变: List<String> newString = new ArrayList<>(); String myString = "hello"; new ......
拷贝 元素 Java List

线程间通信

线程间通信 多线程编程步骤(中) 第一,创建资源类,创建属性和操作方法;第二,在资源操作方法,1)判断 2)工作 3)通知;第三,创建多线程调用资源类的方法。 案例 要求,有两个线程,实现对一个初始值为0的变量,一个线程对值+1,一个线程对值-1。 代码实现 /** * @author 长名06 * ......
线程

Java基础 线程池

线程池 主要核心原理: ① 创建一个池子,池子中是空的 ② 提交任务时,池子会创建新的线程对象来执行任务,当任务执行完毕,线程会还给池子,下回再次提交任务时,不需要创建新的线程,直接复用已有的线程即可 ③ 但是如果提交任务时,池子中没有空闲线程,并且也无法创建新的线程的时候,任务就会排队等待 线程池 ......
线程 基础 Java

【学习笔记】卡特兰数

卡特兰数 定义: 卡特兰数的计算公式涉及组合计数,它是很多组合问题的数学模型,是一个很常见的数列。 \(\bf{\underline{卡特兰数(Catalan)}}\) 是一个数列,它的一种定义是: \[C_n=\frac{1}{n+1}\binom{2n}{n},n=0,1,2,... \]卡特兰 ......
卡特兰 笔记

学习笔记7+代码

一、苏格拉底挑战 二、遇见的问题 三、实践和代码 代码: #include <stdio.h> #include <pthread.h> // 线程函数,接受一个void*参数,返回一个void*指针 void* thread_function(void* arg) { int thread_arg ......
代码 笔记

Python第二章读书笔记-2023.10.28

03运行超市抹零结账行为 money_all=67.99+11.75+21.1+8.49+25.89+17.5+22.4 money_all_str=str(money_all) print("商品总金额为:",money_all_str) money_real=int(money_all) mon ......
第二章 笔记 Python 2023 10

Java语言基础知识全总结

一.Java的优点 1. 跨平台性。一次编译,到处运行。Java编译器会将Java代码编译成能在JVM上直接运行的字节码文件,C++会将源代码编译成可执行的二进制代码文件,所以C++执行速度快 2. 纯面向对象。Java 所有的代码都必须在类中书写。C++兼具面向对象和面向过程的特点? 3. Jav ......
全总 基础知识 语言 基础 知识

学习笔记7

第四章 并发编程 这一章主要介绍了并发编程的相关内容,包括并行计算、顺序算法与并行算法以及并行性和并发性;解释了线程的原理机器相对于进程的优势,同时还进行了线程管理、并发编程的实际操作,让我们更加深刻地了解多任务处理、线程同步和并发编程的原理及方法。 并行计算 基于分治原则(如二叉树查找和快速排序等 ......
笔记

第九周Linux学习笔记

本周的学习内容属实有点多(差点跟不上,浅浅吐槽一下),学习了第五章进程管理以及第六章I/O重定向。具体命令及其作用在下面一一列举。 第五章:进程管理 进程小tips:每个进程都有唯一的进程表示PID;进程有就绪态、阻塞态和运行态三个状态;进程有的是密集型有的是疏散型。 1、“ps aux”命令,查看 ......
笔记 Linux

在学习JavaWeb以及Java框架中的疑惑

1. Sevlet和SpringMVC与SpringBoot以及Spring Servlet是服务器端小程序,本质上是属于Controller层的,举个例子,LoginServlet和LoginController是划等号的。 Spring MVC是Spring的一个模块,是一个web框架。通过Di ......
框架 JavaWeb Java

现代企业管理的部分复习笔记

因为不是专业课学的比较随意,大概会分成四个部分,三个内容一个部分题,最近就要考试了,共勉 格式问题显示不好 用word写的,链接如下 我用夸克网盘分享了「现代企业管理.docx」,点击链接即可保存。打开「夸克APP」在线查看,支持多种文档格式转换。 链接:https://pan.quark.cn/s ......
企业管理 部分 笔记 企业

《信息安全与设计》第四章学习笔记

《信息安全与设计》第四章学习笔记 第四章 并发编程 并行计算导论 顺序算法与并行算法 顺序算法:所有步骤通过单个任务依次执行,每次执行一个步骤,当所有步骤执行完成时,算法结束。 并行算法:cobegin-coend代码块来指定独立任务,所有任务都是并行执行的,紧接着代码块的下一个步骤将只在所有这些任 ......
笔记 信息

LeedCode刷题(2)-Java随机数练习

2.随机数练习 (1)随机生成数 题目:请编写如下所示程序 随机生成并显示一位数的正整数(1~9的值) 随机生成并显示一位数的负整数(-9 ~ -1的值) 随机生成并显示两位数的正整数(10~99的值) ①Random类总结 random是Java提供的一个类库,它的实例会生成一连串的伪随机数 Ra ......
随机数 LeedCode Java

学习笔记7

目录知识点归纳第4章 并行计算并行性和并发性线程线程同步苏格拉底挑战问题与解决方案实践过程 知识点归纳 第4章 并行计算 并行性和并发性 并行算法只识别可并行执行的任务。CPU系统中,并发性是通过多任务处理来实现的。 通常,并行算法只识别可并行执行的任务,但是它没有规定如何将任务映射到处理组件。在理 ......
笔记

java——redis随笔——实战——优惠券秒杀——分布式锁

注意:synchronized用户单机(jvm)上面的锁,对于分布式应用则无能为力。所以对于分布式系统,则需要分布式锁。 分布式锁:满足分布式系统或集群模式下多线程课件并且可以互斥的锁 分布式锁的核心思想就是让大家共用同一把锁,那么我们就能锁住线程,不让线程进行,让程序串行执行,这就是分布式锁的核心 ......
优惠券 分布式 实战 随笔 redis

用java写一个计算机

public class Demo07 { public static void main(String[] args) { //用scanner创建一个扫描器对象,用于接收键盘数据 Scanner scanner = new Scanner(System.in);//System.in是输入的意思 ......
计算机 java

第四章-并发编程(学习笔记7)

一、本章思维导图 二、知识点总结 本章论述了并发编程,介绍了并行计算的概念。指出了并行计算的重要性∶比较了顺序算法与并行算法,以及并行性与并发性;解释了线程的原理及其相对于进程的优势;介绍了Pthread中的线程操作,包括线程管理函数,互斥量、连接、条件变量和屏障等线程同步工具;解释了死锁问题,并说 ......
笔记

开发板和Windows 11网络直连配置

将开发板通过网线和Windows 11直连,组成局域网,并且开发板可以连接Internet。 1 开发板和PC连接示意图 一般笔记本都支持WiFi和有线网络连接,将笔记本和开发板进行如下连接: 2 网络共享配置 打开控制面板\网络和 Internet\网络连接,配置“WLAN”,让“以太网”共享“W ......
Windows 网络

用户故事与敏捷开发 读书笔记 04

第6章 用户故事验收测试 比起写冗长的需求列表,可以用测试来充实很多用户故事的细节。测试是一个两步走的流程:第一,将测试要点记录在故事卡的背面,任何时候发现新的测试,都可以记录到故事卡的背面;第二,将测试要点变成全面的测试,这些测试可以用来演示故事已正确、完整地实现。 测试验收提供了确认故事是否被完 ......
笔记 故事 用户 04