线程 进程 基础 程序

小程序自动化测试的示例代码

近期团队打算做一个小程序自动化测试的工具,期望能够做的业务人员操作一遍小程序后,自动还原之前的操作路径,并且捕获操作过程中发生的异常,以此来判断这次发布时候会影响小程序的基础功能。 ......
示例 代码 程序

2、多线程锁

# 多线程锁 ## 乐观锁与悲观锁 ​ 悲观锁:认为 在使用数据的时候一定会有线程来修改数据,因此在获取数据的时候会先加索,确保数据不会被别的线程修改 ​ synchronized和Lock的实现类都是悲观锁 ​ 使用场景:适合操作写多的场景,**先加锁**可以保证写操作时数据正确,显示锁定后**再 ......
线程

3、LockSupport与线程中断

# LockSupport与线程中断 ## 线程中断 ​ 首先 ​ 一个线程不应该由其他线程来强制中断或停止,而是***应该由线程自己自行停止***,自己来决定自己的命运。所以,Thread.stop,Thread.suspend, Thread.resume 都已经被废弃了。 ​ 其次 ​ 在Ja ......
线程 LockSupport

如何提高Web应用程序安全

Web应用程序安全是指为保护Web应用程序免受潜在攻击而采取的措施。包括保护Web应用程序免受可能损害其功能、安全性和数据完整性的外部威胁的策略和流程。 有效的 Web 应用程序安全策略包括识别潜在漏洞、评估其相关风险以及实施防攻击的措施。 Web 应用程序中的常见漏洞 攻击者经常利用的几个常见漏洞 ......
应用程序 程序 Web

Java项目的程序里为什么老用注解?注解有哪些作用

注解和类,接口等属于同一层并列的东西 来源于 Java项目的程序里为什么老用注解?注解有哪些作用 https://blog.csdn.net/m0_71777195/article/details/127818321 注解的英文名叫“Annotation”,是 Java 中给类、方法以及成员变量等元 ......
注解 作用 程序 项目 Java

django基础操作简述

# django基础操作简述 本文是对django整体架构功能的简单叙述,重在能够通过django架构简单的实现前端网页到后端数据库整体流程的实现,也是对[django配置](https://www.cnblogs.com/Leethon-lizhilog/p/16967485.html)的概念补充 ......
基础 django

核心交换机六个基础知识

一、背板带宽 背板带宽也称交换容量,是交换机接口处理器或接口卡和数据总线间所能吞吐的最大数据量,就像是立交桥所拥有的车道的总和。由于所有端口间的通信都需要通过背板完成,所以背板所能提供的带宽,就成为端口间并发通信时的瓶颈。 带宽越大,提供给各端口的可用带宽越大,数据交换速度越大;带宽越小,给各端口提 ......
交换机 基础知识 核心 基础 知识

【numpy基础】--聚合计算

上一篇介绍的**通用计算**是关于多个`numpy`数组的计算, 本篇介绍的**聚合计算**一般是针对单个数据集的各种统计结果,同样,使用**聚合函数**,也可以避免繁琐的循环语句的编写。 # 元素的和 数组中的元素求和也就是合计值。 ## 调用方式 **聚合计算**有两种调用方式,一种是面向对象的 ......
基础 numpy

uniapp微信小程序转支付宝小程序踩坑(持续更新)

首先第一个,真有被折磨到! // 微信正常使用,支付宝不行 <image src="https://static.dabapiao.com/images/coupon-index.png" mode=""/> // 以下两种 微信、支付宝都正常使用 <image src="https://stati ......
程序 uniapp

保证线程安全的10个小技巧

前言 对于从事后端开发的同学来说,线程安全问题是我们每天都需要考虑的问题。 线程安全问题通俗的讲:主要是在多线程的环境下,不同线程同时读和写公共资源(临界资源),导致的数据异常问题。 比如:变量a=0,线程1给该变量+1,线程2也给该变量+1。此时,线程3获取a的值有可能不是2,而是1。线程3这不就 ......
线程 技巧

浅析 Jetty 中的线程优化思路

本文介绍了 Jetty 中 ManagedSelector 和 ExecutionStrategy 的设计实现,通过与原生 select 调用的对比揭示了 Jetty 的线程优化思路。Jetty 设计了一个自适应的线程执行策略(EatWhatYouKill),在不出现线程饥饿的情况下尽量用同一个线程... ......
线程 思路 Jetty

SimpleDateFormat 线程不安全!使用DateTimeFormatter

1、报错原因: (1)、SimpleDateFormat 是线程不安全的 (2)、代码想把格林威治时间转换成yyyy-MM-dd HH:mm:ss 报错 Exception in thread :java.lang.NumberFormatException: For input string: " ......

HTTP(Hypertext Transfer Protocol)是一种用于在网络上传输超文本的协议。它是Web应用程序之间数据交换的基础,并且也被广泛用于其他应用程序之间的通信。

HTTP(Hypertext Transfer Protocol)是一种用于在网络上传输超文本的协议。它是Web应用程序之间数据交换的基础,并且也被广泛用于其他应用程序之间的通信。 HTTP基于客户端-服务器模型,其中客户端发起请求,而服务器响应请求并返回相应的数据。它使用TCP/IP作为底层传输协 ......

如何将WPF程序打包为单文件

Nuget安装 Costura.Fody 包即可。 项目地址: https://github.com/Fody/Costura 注意:此包处于维护模式,商业使用需谨慎。 ......
文件 程序 WPF

RESTful API(Representational State Transfer API)是一种设计和构建网络应用程序的软件架构风格。它是一种基于HTTP协议的API设计理念,旨在实现系统的可伸缩性、简洁性、可靠性和可扩展性。

RESTful API(Representational State Transfer API)是一种设计和构建网络应用程序的软件架构风格。它是一种基于HTTP协议的API设计理念,旨在实现系统的可伸缩性、简洁性、可靠性和可扩展性。 RESTful API 的设计原则可以概括为以下几点: **资源* ......

CMake基础(三) - Cmake实战

一个实战教程,通过一个具体的示例来演示如何使用 CMake 构建和管理一个 C++ 项目。 这里有一个简单的数学库,其中包含两个源文件 math.cpp 和 math.h,并且有一个示例程序 main.cpp 使用该库。 以下是项目的目录结构: ``` - MyMathLib - CMakeList ......
实战 基础 CMake Cmake

【python基础】异常

Python使用被称为异常的特殊对象来管理程序执行期间发生的错误。每当发生执行错误时,Python都会创建一个异常对象。如果编写了处理该异常的代码,程序将继续执行;如果未对异常进行处理,程序将停止,并显示一个Trackback,其中包含有关异常的报告。 # 1.try-except代码块 异常是用t ......
基础 python

小程序中使用vant weapp

前提: 其实vant 官方的步骤写的很详细 但是在我照着一步步走了之后发现还是用不了有报错 因此详细扩充一下 1. 在项目文件夹下开启终端 执行 npm init 2. 再执行 npm install (这后面其实就是官网的内容了 主要是 1、2 条 导致的我的报错) 3. 通过NPM的方式安装 n ......
程序 weapp vant

程序员还是需要有点英语水平...

今天在代码走查时,注意到下面代码中的这个常量:MINDESTBETRAG,看注释它表示的是单笔资金交易的最小限制金额。而MINDESTBETRAG都是哪些单词的组合呢?令人费解!前三个字母组成MIN,那么后面的DESTBETRAG呢?转换成小写destbetrag,具备一些英语底子的我,表示依然不认 ......
程序员 水平 还是 程序

c#基础功能

using System.Net; internal class Program { private static void Main(string[] args) { //组成字符串 var m1 = string.Concat(1, 2,3,4,121); //判断是否有空格的字符串 strin ......
功能 基础

Linux多线程10-死锁

有时,一个线程需要同时访问两个或更多不同的共享资源,而每个资源又都由不同的互斥量管理。当超过一个线程加锁同一组互斥量时,就有可能发生死锁。 两个或两个以上的进程在执行过程中,因争夺共享资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁。 死锁的 ......
线程 Linux 10

Linux多线程09-互斥锁

- 为避免线程更新共享变量时出现问题,可以使用互斥量(mutex 是 mutual exclusion的缩写)来确保同时仅有一个线程可以访问某项共享资源。可以使用互斥量来保证对任意共享资源的原子访问。 - 互斥量有两种状态:已锁定(locked)和未锁定(unlocked)。任何时候,至多只有一个线 ......
线程 Linux 09

Linux多线程11-读写锁

当有一个线程已经持有互斥锁时,互斥锁将所有试图进入临界区的线程都阻塞住。 但是考虑一种情形,当前持有互斥锁的线程只是要读访问共享资源,而同时有其它几个线程也想读取这个共享资源,但是由于互斥锁的排它性,所有其它线程都无法获取锁,也就无法读访问共享资源了,但是实际上多个线程同时读访问共享资源并不会导致问 ......
线程 Linux 11

Linux多线程13-条件变量

上节代码存在的问题: 生产者已经没有数据了, 消费者还在while循环判断是否有数据,浪费资源 没有数据了应该通知生产者生产,生产好了通知消费者消费 这就需要条件变量 pthread_cond_t ```c int pthread_cond_init(pthread_cond_t *restrict ......
线程 变量 条件 Linux 13

Linux多线程14-信号量

信号量的类型 sem_t ```c int sem_init(sem_t *sem, int pshared, unsigned int value); 初始化信号量 参数: - sem: 信号量变量地址 - pshared: 0 用在线程间, 非0 用在进程间 - value: 信号量中的值 in ......
线程 信号 Linux 14

Linux多线程12-生产者和消费者模型

![image](https://img2023.cnblogs.com/blog/894919/202306/894919-20230626085900099-1696309927.png) 一个最简单的生产者消费者模型 ```c /* 生产者消费者模型(粗略版) */ #include #inc ......
生产者 线程 模型 消费者 Linux

Linux多线程01-线程概述

### 线程概述 - 与进程(process)类似,线程(thread)是允许应用程序并发执行多个任务的一种机制。一个进程可以包含多个线程。同一个程序 中的所有线程均会独立执行相同程序,且共享同一份全局内存区域,其中包括初始化数据段、未初始化数据段,以及堆内存段。(传统意义上的 UNIX 进程只是多 ......
线程 Linux 01

Linux多线程02-创建线程

### pthread_create 描述: > pthread_create() 函数在调用进程中创建一个新的线程。新线程通过调用 start_routine() 开始执行,arg 作为 start_routine() 的唯一参数传递。 新线程以以下方式之一终止: - 调用 pthread_exi ......
线程 Linux 02

Linux多线程03-终止线程

### pthread_exit 和 pthread_self 和 pthread_equal 描述: #### **pthread_exit** > pthread_exit() 函数终止调用该函数的线程,并通过retval返回一个值,如果该线程是可连接的,则在同一进程中调用pthread_joi ......
线程 Linux 03

Linux多线程06-线程取消

### pthread_cancel 描述: > pthread_cancel()函数向线程thread发送一个取消请求。目标线程对取消请求的响应取决于该线程控制的两个属性:其取消状态和类型。 一个线程的取消状态由pthread_setcancelstate(3)确定,可以启用(对于新线程而言是默认 ......
线程 Linux 06