• 2024-06-13FFmpeg结构体:AVStream
    1.描述AVStream是存储每一个视频/音频流信息的结构体,位于avformat.h文件中。2.结构体定义1typedefstructAVStream{2intindex;/**<streamindexinAVFormatContext*/3/**4*Format-specificstreamID.5*decoding:setbyli
  • 2024-06-12Interlocked 为多个线程共享的变量提供原子操作 多线程重入
    Interlocked可以为多个线程共享的变量提供原子操作主要使用的读写方法varrunningState=Interlocked.Read(refisRunning);Interlocked.Exchange(refisRunning,0);可以配合lock实现业务常用方法Add(Int32,Int32) 对两个32位整数进行求和并用和替换第一个整数,上述操
  • 2024-05-29数据类型
    数据类型类型表示备注布尔型布尔型的值只可以是常量true或者falsevarbbool=true数字类型整型int8,int16,int32,int64和浮点型float32、float64byte就是int8,int就是int32字符串类型string一串固定长度的字符连接起来的字符序列。Go的字符串是
  • 2024-05-26etcd MVCC 存储结构及流程
    什么是MVCCMVCC是Multi-VersionConcurrencyControl的缩写,即多版本并发控制。它是一种并发控制的方法,用于在数据库系统中实现事务的隔离性。MVCC是一种乐观锁机制,它通过保存数据的多个版本来实现事务的隔禽性。在etcd中,MVCC是用于实现数据的版本控制的。而且可以查看历
  • 2024-04-28攻防世界-难度1- xxxorrr
    攻防世界-逆向-难度1根据提示应该是异或加密,找到密文和密钥,再异或回去就得到原文。参考https://blog.csdn.net/qq_63699339/article/details/130657034官方wp逆向解法梳理一下程序执行逻辑1.在main函数之前的init-array段首先执行了sub84A在ELF(ExecutableandLinkabl
  • 2024-04-24MySql 规范
    强制要求类型MySQLJavaDelphi备注日期(Date)、日期时间(DateTime)BigIntLongInt64通常单位为秒即可,特殊情况下才可以使用毫秒;Boolean值Tinyint(1),要求非空BooleanBooleanmybatis-generator也会自动生成Boolean,声明一个is_activeboolean类型示例:CREATETA
  • 2024-04-13CTFshow Reverse 逆向4 学习记录
     题目 分析过程 是一个无壳,64位的文件丢到IDA里面,找到main函数1int__cdecl__noreturnmain(intargc,constchar**argv,constchar**envp)2{3__int64v3;//rdx4char*v4;//[rsp+20h][rbp-18h]56qword_140004618=(__int64)malloc(1
  • 2024-04-092024.4.9 avx加速一维卷积操作(汇总)
    第三次作业提交内容一:源代码在-O3编译优化下执行结果:AVX指令集优化://conv_avx.cppboolConvolve1D_Ks5_F64_AVX(double*__restrict__y,constdouble*__restrict__x,constdouble*__restrict__kernel,int64_tnum_pts){constexprint64_tkernel_size=5
  • 2024-03-29每个程序员都应该了解的内存知识(五): 代码优化
    代码优化多线程优化尽量使用顺序读写因为分支预测的关系,顺序读写通常能够带来更好的性能.共享变量将只读变量和读写变量分离有可能因为缓存行的原因导致读写变量的更新影响到读变量,进而影响了运行速度提升数据的局部性,将一起使用的读写变量分组到一个结构中缓
  • 2024-03-24etcd 以及 redis分布式锁的实现优劣比较
    etcd以及redis分布式锁的实现优劣比较背景介绍在学习etcd时,对于使用etcd实现分布式锁(使用etcd来实现一个简单的分布式锁)做了一个简单的示例,同时也能想到和Redis实现的分布式锁相比,基于etcd来做有什么好处呢?技术要点底层技术比较我们必须要明白一件事情,两者的底
  • 2024-03-09AVStream(avformat.h)
    AVStream是存储每一个视频/音频信息的结构体。/***Streamstructure.*Newfieldscanbeaddedtotheendwithminorversionbumps.*Removal,reorderingandchangestoexistingfieldsrequireamajor*versionbump.*sizeof(AVStream)mustnotbeusedou
  • 2024-03-07[转]Golang atomic.CompareAndSwapInt64()实例讲解
     原文: http://www.manongjc.com/detail/30-anadyrrwgsoebxp.html-------------- 在Go语言中,原子包提供lower-level原子内存,这对实现同步算法很有帮助。Go语言中的CompareAndSwapInt64()函数用于对int64值执行比较和交换操作。此函数在原子包下定义。在这里,您需要导入“syn
  • 2024-02-22[newstarctf2023] --RE wp
    AndroGenshin:rc4加密表,base64换表:脚本梭就行username=b"genshinimpact"base64_table=[125,239,101,151,77,163,163,110,58,230,186,206,84,84,189,193,30,63,104,178,130,211,        164,94,75,16,32,33,193,160,120,
  • 2024-02-20golang随机数源码分析及应用
    引言大家刚开始使用随机数的时候可能会这样写,但是他会产生一个问题,这是什么问题呢funcmain(){ fori:=0;i<10;i++{ rand.Seed(time.Now().Unix()) fmt.Println(rand.Intn(100)) }}发现打印出来的结果都是相同的让我们看看用代码分析为什么产生这个问题首
  • 2024-01-18Go Web项目分层 对比看下portal server 转载
    这样我们Controller中的入口函数就变成了下面这样:funcCreateOrder(ctxcontext.Context,req*CreateOrderStruct)(   *CreateOrderRespStruct,error,){   //...}CreateOrder有两个参数,ctx用来传入trace_id一类的需要串联请求的全局参数,req里存储了我们创
  • 2024-01-172024-01-17:lc的30. 串联所有单词的子串
    2024-01-17:用go语言,给定一个字符串s和一个字符串数组words。words中所有字符串长度相同。s中的串联子串是指一个包含words中所有字符串以任意顺序排列连接起来的子串。例如,如果words=["ab","cd","ef"],那么"abcdef","abefcd","cdabef","cdefab",&quo
  • 2024-01-16Gorm常见映射关系查询实例
    一、概述本小节主要罗列一下常见的查询以及相应的代码示例1.假设你有一个轮播图表,请查询出轮播图中的所有记录2.获取后台管理用户列表,并把用户的角色信息也查询出来3.查询用户订单信息,要求:查询某用户买了某商品的订单信息。本例是查询用户购买的视频的详细的
  • 2024-01-16GOrm多对多(关联查询)
    一、概述现有两张表,一张表代表章节(chapter)、另外一张表代表集(episode)。一个章节中包含多集,一个集中有可能有视频也有可能没有视频,视频表(video)。表结构如下:1.章节表(chapter),ps:一个章节中包含了多集2.集表(episode),集中有视频3.视频表(video) 要求:查
  • 2023-12-30Codeforces Round 918 (Div. 4) (前缀和,权值树状数组,二维偏序, python + golang)
    Dashboard-CodeforcesRound918(Div.4)-Codeforces  fromcollectionsimport*defsolve():a,b,c=list(map(int,input().split()))hs=defaultdict(int)hs[a]+=1hs[b]+=1hs[c]+=1foriinhs:ifhs[i]=
  • 2023-12-20Go标准库学习:io库
    io库io中包括了常用的io流中的函数,并依靠这些函数定义了常用的接口和接口组合。我觉得这是最重要的。常量(Constants)const(SeekStart=0//定位到文件头SeekCurrent=1//定位到当前读写的位置SeekEnd=2//定位到文件尾)都是用于在文件读写时进行定
  • 2023-12-18发布 VectorTraits v1.0, 它是C#下增强SIMD向量运算的类库
    发布VectorTraitsv1.0,它是C#下增强SIMD向量运算的类库zyl910吃瓜群众​关注 你经常看C#话题的内容发布VectorTraitsv1.0,它是C#下增强SIMD向量运算的类库VectorTraits:SIMDVectortypetraitsmethods(SIMD向量类型的特征方法).N
  • 2023-12-162023-12-16:用go语言,给定整数数组arr,求删除任一元素后, 新数组中长度为k的子数组累加和的最大值。 来自字节。
    2023-12-16:用go语言,给定整数数组arr,求删除任一元素后,新数组中长度为k的子数组累加和的最大值。来自字节。答案2023-12-16:来自左程云。灵捷3.5大体步骤如下:算法maxSum1分析:1.计算输入数组arr的长度n。2.如果n<=k,则返回0。3.初始化ans为int类型的最小值(math
  • 2023-12-162023-12-16:用go语言,给定整数数组arr,求删除任一元素后, 新数组中长度为k的子数组累加和的最大值。 来自字节。
    2023-12-16:用go语言,给定整数数组arr,求删除任一元素后,新数组中长度为k的子数组累加和的最大值。来自字节。答案2023-12-16:来自左程云。灵捷3.5大体步骤如下:算法maxSum1分析:1.计算输入数组arr的长度n。2.如果n<=k,则返回0。3.初始化ans为int类型的最小值(math.MinInt32)
  • 2023-12-08【父子进程/AES/XTEA/SMC】赛后复盘
    官方wp:进程重影技术:进程重映像利用了Windows内核中的缓存同步问题,它会导致可执行文件的路径与从该可执行文件创建的映像节区所报告的路径不匹配。通过在一个诱饵路径上加载DLL,然后卸载它,然后从一个新路径加载它,许多WindowsAPI将返回旧路径。这可能可以欺骗安全产品,使其在错误
  • 2023-12-05Nim 概念 Concept 对性能的影响
    Nim概念Concept对性能的影响继上一篇文章《C#泛型编译特性对性能的影响》后,我又研究了Nim语言相关的设计,由于Nim语言与C#语言有些差异,比如Nim没有接口,也没有直接的class关键字,所以某些实现是变通的办法。概念Concept在Nim中没有Interface的概念,虽然有多次提案,