E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
thinkphp源码分析
freertos
源码分析
三 task 结构与几个链表
任务控制块taskControlBLock结构体,以下为部分typedefstructtskTaskControlBlock{volatileStackType_t*pxTopOfStack;//栈顶指针ListItem_txStateListItem;//任务状态表项ListItem_txEventListItem;//事件表项UBaseType_tuxPriority;//优先级StackTy
yvee
·
2024-02-07 10:20
链表
数据结构
freertos
源码分析
四 任务创建的简单分析
任务创建xTaskCreate为TCB和TCB栈分配空间,初始化,加入就绪任务链表#if(configSUPPORT_DYNAMIC_ALLOCATION==1)BaseType_txTaskCreate(TaskFunction_tpxTaskCode,constchar*constpcName,constconfigSTACK_DEPTH_TYPEusStackDepth,void*const
yvee
·
2024-02-07 10:17
嵌入式硬件
校园团餐SAAS系统源码
技术特点>*前后端完全分离(互不依赖开发效率高)>*采用PHP8(强类型严格模式)>*
ThinkPHP
8.0(轻量级PHP开发框架)>*Uni-APP(开发跨平台应用的前端框架)>*TDesign(企业级中后台产品
像素科技
·
2024-02-07 10:31
微信
ConcurrentLinkedHashMap
源码分析
一、简介ConcurrentLinkedHashMap是google开源的线程安全的方便并发的Map,Map利用LRU缓存机制对Map中存储对象进行换入换出管理。采用两套资源控制机制,一套同步机制,使用ConcurrentMap对对象数据进行KV存储,保证多线程并发安全地调用Map资源,而对于存储对象的换入换出管理则采用异步机制,使用Queuebuffer存储每次的因对象读写而产生的对象换入换出任
lim快乐_无限
·
2024-02-07 09:15
Flink执行流程与
源码分析
(面试必问,建议收藏)
Flink主要组件作业管理器(JobManager)(1)控制一个应用程序执行的主进程,也就是说,每个应用程序都会被一个不同的Jobmanager所控制执行(2)Jobmanager会先接收到要执行的应用程序,这个应用程序会包括:作业图(JobGraph)、逻辑数据流图(ogicaldataflowgraph)和打包了所有的类、库和其它资源的JAR包。(3)Jobmanager会把Jobgraph
大数据左右手
·
2024-02-07 09:04
Flink
大数据
flink
三级?是缓存不是片! spring的三级缓存---学习spring框架第一步
二、是怎么解决的三、反思总结
源码分析
:DefaultSingletonBeanRegistry类getSingleton方法三级缓存的作用反思总结面试点:1、三级缓存原理:如上2、二级缓存就可以解决了为什么还要有三级缓存为什么需要早期引用
苏汀star
·
2024-02-07 08:17
框架
spring
学习
java
面试
nginx upstream server主动健康检测模块ngx_http_upstream_check_module 使用和
源码分析
(中)
目录6.
源码分析
6.1解析指令分析6.2待检查的服务器的添加和状态查询6.3本模块的进程初始化函数6.4准备执行健康检测任务6.5执行健康检测任务本篇对ngx_http_upstream_check_module
码农心语
·
2024-02-07 07:53
高性能
nginx学习
LINUX
nginx
http
运维
健康检测
tengine
源码分析
nginx upstream server主动健康检测模块ngx_http_upstream_check_module 使用和
源码分析
(下)
目录7.实现一个UDP健康检测功能7.1功能定义7.2定义一个新的健康检测类型7.3增加udp特定的健康检测需要的配置指令7.3.1ngx_http_upstream_check_srv_conf_s结构体的扩展7.3.2check_udp_send的实现7.3.3check_udp_expect的实现7.3.416进制解码代码的实现7.4ngx_http_upstream_check函数的修改7
码农心语
·
2024-02-07 07:50
nginx学习
LINUX
c++开发
nginx
http
udp
健康检测
upstream
tengine
源码实现
Golang context 万字解析实现原理
Golang:context基于go1.21版本Context是什么Context的功能应用场景
源码分析
1.10Context核心结构1.1Err错误2.1emptyCtx3.1Background()
Go 的学习之路
·
2024-02-07 04:02
golang
服务器
linux
RocketMQ
源码分析
(四)消息的发送
消息发送的主要步骤为:验证消息,查找路由,消息发送(包含异常机制处理)我们以DefaultMQProducer#send为切入口:以下代码为验证消息publicSendResultsend(Messagemsg)throwsMQClientException,RemotingException,MQBrokerException,InterruptedException{//校验消息(主要是长度是
甘_
·
2024-02-07 04:01
muduo-net
源码分析
(七)——TcpServer 和 TcpConnection(二)
先序这一节我们将继续完善TcpServer和TCPConnection类,并且解决上一节思考的问题【一定要理清思路】;TcpServer
源码分析
重要的变量ConnectionCallbackconnectionCallback
cyjiayou
·
2024-02-07 03:02
muduo源码分析
c++
Java Character源码剖析
下面结合
源码分析
Character的贡献。Unicode也许你没听过Unicode,但应该见过UTF-8。
洒水水儿
·
2024-02-07 02:54
Java常用类的源码剖析
java
开发语言
php面试题大全及答案
**##包括PHP基础部分、数据库部分、面向对象部分、
ThinkPHP
部分部分、smarty模板引擎、二次开发系统(DEDE、ecshop)、微信公众平台开发、对于自身掌握的技术描述等几部分PHP面试题
艾莉宝贝
·
2024-02-07 02:04
面试题
php
Thinkphp
5.0.23远程代码执行漏洞复现
1、漏洞介绍使用
Thinkphp
5.x远程代码执行漏洞,无需登录即可执行任意命令,获取服务器最高权限。
大象只为你
·
2024-02-07 01:29
跟我学网安知识
命令执行
网络安全
漏洞复现
libevent
源码分析
(2)--2.1.8--结构体 struct event和struct event_callback
一、event_callback结构体structevent_callback{//下一个回调事件TAILQ_ENTRY(event_callback)evcb_active_next;//回调事件的状态标识,具体为://#defineEVLIST_TIMEOUT0x01//event在time堆中,min_heap//#defineEVLIST_INSERTED0x02//event在已注册事件
录事参军
·
2024-02-07 01:18
libevent
libevent
libevent
Libevent
源码分析
-----与event相关的一些函数和操作
Libevent提供了一些与event相关的操作函数和操作。本文就重点讲一下这方面的源代码。在Libevent中,无论是event还是event_base,都是使用指针而不会使用变量。实际上,如果查看Libevent不同的版本,就可以发现event和event_base这两个结构体的成员是不同的。对比libevent-2.0.21-stable和libevent-1.4.13-stable这两个版
amoscykl
·
2024-02-07 01:48
Libevent
Libevent
libevent
Libevent
源码分析
-----信号event的处理
信号event的工作原理:前面讲解了Libevent如何监听一个IO事件,现在来讲一下Libevent如何监听信号。Libevent对于信号的处理是采用统一事件源的方式。简单地说,就是把信号也转换成IO事件,集成到Libevent中。统一事件源的工作原理如下:假如用户要监听SIGINT信号,那么在实现的内部就对SIGINT这个信号设置捕抓函数。此外,在实现的内部还要建立一条管道(pipe),并把这
amoscykl
·
2024-02-07 01:47
Libevent
Libevent
libevent
Libevent
源码分析
-----超时event的处理
如何成为超时event:Libevent允许创建一个超时event,使用evtimer_new宏。//event.h文件#defineevtimer_new(b,cb,arg)event_new((b),-1,0,(cb),(arg)) 从宏的实现来看,它一样是用到了一般的event_new,并且不使用任何的文件描述符。从超时event宏的实现来看,无论是evtimer创建的event还是一般ev
amoscykl
·
2024-02-07 01:47
Libevent
Libevent
libevent
Libevent
源码分析
-event_base
event_base数据结构初始化event_base相关接口前面介绍了event,本节介绍Reactor的核心结构:event_base,它在event-internal.h中。event_base是整个libevent的核心,它持有所有注册的事件,并负责通知激活的事件。event_base数据结构structevent_base{conststructeventop*evsel;void*ev
KangRoger
·
2024-02-07 01:16
Libevent
libevent
event-base
reactor
MyBatis的二级缓存以及装饰器模式运用
目录Mybatis中如何配置二级缓存基于注解配置缓存基于XML配置缓存Cache解析处理过程Cache支持的过期策略缓存的基本实现装饰器模式Mybatis缓存实现
源码分析
BlockingCacheLRU
陈脩
·
2024-02-06 21:08
iBatis
装饰器模式
java
缓存
eureka
开发语言
JUC AQS ReentrantLock
源码分析
(一)
Java的内置锁一直都是备受争议的,在JDK1.6之前,synchronized这个重量级锁其性能一直都是较为低下,虽然在1.6后,进行大量的锁优化策略,但是与Lock相比synchronized还是存在一些缺陷的:虽然synchronized提供了便捷性的隐式获取锁释放锁机制(基于JVM机制),但是它却缺少了获取锁与释放锁的可操作性,可中断、超时获取锁,且它为独占式在高并发场景下性能大打折扣。如
程序员Yamy
·
2024-02-06 19:13
thinkphp
6入门(19)-- 中间件向控制器传参
可以通过给请求对象赋值的方式传参给控制器(或者其它地方),例如hello='
ThinkPHP
';return$next($request);}}然后在控制器的方法里面可以直接使用publicfunctionindex
软件工程小施同学
·
2024-02-06 19:08
PHP
thinkphp
[k8s
源码分析
][client-go] workqueue
1.前言转载请说明原文出处,尊重他人劳动成果!源码位置:https://github.com/nicktming/client-go/tree/tming-v13.0/util/workqueue分支:tming-v13.0(基于v13.0版本)本文将分析util包中的workqueue.在各类controller中经常会使用该workqueue中的一些类.architecture.png2.qu
nicktming
·
2024-02-06 15:10
【PHP】TP5.0模型关联搜索查询
在
ThinkPHP
5.0中,模型关联为我们提供了一种便捷的方式来操作数据库,尤其是在进行关联查询时。本文将介绍如何在TP5.0中使用模型关联进行搜索查询,并解决可能出现的报错问题。
zzoood
·
2024-02-06 15:00
php
TP5
php
sql
数据库
nginx upstream server主动健康检测模块ngx_http_upstream_check_module 使用和
源码分析
(上)
2.1check2.2check_keepalive_requests2.3check_http_send2.4check_http_expect_alive2.5check_shm_size2.6check_status3.加载健康检测模块3.1模块的编译3.2模块的配置4.测试验证5.思考与问题6.
源码分析
码农心语
·
2024-02-06 14:27
nginx学习
nginx
http
运维
健康检测
主动
upstream
thinkphp
6入门(18)-- 中间件中除了handle函数,还可以有其它函数吗
在
ThinkPHP
6的中间件中,除了handle方法外,还可以定义其他方法。
软件工程小施同学
·
2024-02-06 13:13
thinkphp
设计模式之原型模式
克隆羊问题1.1传统方式解决克隆羊问题1.2代码1.3传统方式的缺点二、原型模式2.1原型模式基本介绍2.2原型模式原理结构uml类图2.3原型模式解决克隆羊问题的应用实例2.4原型模式在Spring框架中
源码分析
三
咱老李
·
2024-02-06 11:41
设计模式
设计模式
原型设计模式
深克隆
浅克隆
编码规范
2020-09-24Thinkadmin v6任意文件读取漏洞(CVE-2020-25540)复现
Thinkadminv6任意文件读取漏洞(CVE-2020-25540)复现快结束,抓住HVV的小尾巴,现在有空去复现最近出的漏洞一、漏洞简介:ThinkAdmin是一套基于
ThinkPHP
框架的通用后台管理系统
thelostworldSec
·
2024-02-06 10:32
Spring框架AOP
源码分析
(二)
AOP编程使用1.注解版本实现AOP开启事物注解权限@Aspect指定一个类为切面类@Pointcut("execution(*com.itmayiedu.service.UserService.add(..))")指定切入点表达式@Before("pointCut_()")前置通知:目标方法之前执行@After("pointCut_()")后置通知:目标方法之后执行(始终执行)@AfterRet
Mark_ZSQ
·
2024-02-06 10:18
RTthread线程间通信(邮箱,消息队列,信号/软件中断)---03信号(软件中断)
源码分析
信号实际使用看这一个#ifdefined(RT_USING_SIGNALS)rt_sigset_tsig_pending;/**sig_vectors==RT_NULL){//这一个线程之前没有安转过rt_thread_alloc_sig(tid);}if(tid->sig_vectors){old=tid->sig_vectors[signo];if(handler==SIG_IGN)tid->
唐·柯里昂798
·
2024-02-06 09:15
网络
物联网
笔记
单片机
stm32
51单片机
mcu
netty-websocket扩展协议及token鉴权补充
文章源码:gitee源码部分可以看上一篇文章中的
源码分析
netty-websocket鉴权token及统一请求和响应头(鉴权控制器)最近刚好没事,看到有朋友说自定义协议好搞,我就想了想,发现上面那种方式实现确实麻烦
离别又见离别
·
2024-02-06 08:12
java排坑之路
websocket
lua
网络协议
c++之std::unique_lock, std::lock, std::scoped_lock及std::condition_variable
可用的第二个参数有三种,而lock_guard只有一种unique_lock的析构需要判断_M_owns,而lock_guard无需判定条件变量的传参为unique_lock说什么都不如源码来的简单明了1.1
源码分析
liuge
·
2024-02-06 08:12
c++学习
c++
开发语言
后端
ThinkPHP
配置文件(五)
关于
ThinkPHP
的配置一共有七种,它们分别是默认配置,应用配置,扩展配置,场景配置,模块配置,动态配置,环境变量配置。
whiteMu
·
2024-02-06 08:22
xv6(RISC-V)操作系统
源码分析
第六节——锁
一、程序并发执行带来的问题及解决方案(一)并发执行带来的问题程序的并发执行提高了程序执行的效率,这是大多数内核所追求的,xv6也是这样。xv6采用两种方式实现程序的并发执行:采用多处理器架构在一个CPU上实现多线程机制xv6采用多处理器架构(硬件系统具有多个CPU独立执行)来实现程序的并发执行。这些CPU共享同一个DRAM,这种共享就带了问题:一个CPU在读取一个数据的同时,另一个CPU正在更新它
MCQSLW
·
2024-02-06 08:05
risc-v
unix
汇编
c语言
xv6(RISC-V)操作系统
源码分析
第一节——操作系统接口
一、内核与进程xv6使用传统形式内核(一个向其他运行中的程序提供服务的特殊程序)。每一个正在运行的程序称为进程,进程拥有自己的指令、数据与栈的内存空间。它们的功能如下:指令:实现程序的运算数据:用于运算过程的变量栈:管理程序的过程调用一个计算机通常有许多进程,但只有一个内核。二、进程调用内核服务的方式——系统调用进程通过调用系统调用来调用内核的服务。系统调用是操作系统接口中的一个调用。系统调用会进
MCQSLW
·
2024-02-06 08:34
risc-v
unix
汇编
vscode
c语言
xv6(RISC-V)操作系统
源码分析
第二节——操作系统组织
一、一个操作系统的基本要求一个操作系统至少需要满足以下三个要求:多路复用进程隔离进程通信(一)多路复用硬件CPU的数量有限,且往往少于同时存在的进程数量。而操作系统需要支持进程的并发执行,所以操作系统应该能使多个进程分时共享计算机的资源。(二)进程隔离一个进程的运行,应当具有一定的独立性,这个独立性指该进程在一定程度上不受其他进程的影响。这可以保证出了bug的程序不会严重影响其他程序的正常运行。(
MCQSLW
·
2024-02-06 08:34
risc-v
c语言
unix
汇编
vscode
xv6(RISC-V)操作系统
源码分析
第三节——地址映射与内存分配
一、xv6页表的作用物理内存指DRAM中的存储单元。物理存储器的一个字节有一个地址,称为物理地址。当指令操作虚拟地址时,分页硬件会将其翻译成物理地址,然后发送给DRAM硬件以读写。而分页硬件操作的核心数据结构就是页表。页表在物理内存中。通过页表机制,xv6为每个进程提供各自私有的地址空间和内存。页表决定了内存地址的含义与物理内存的哪些部分可以被访问。页表提供了一个间接层次,允许xv6实现如下技巧:
MCQSLW
·
2024-02-06 08:34
risc-v
unix
汇编
vscode
xv6(RISC-V)操作系统
源码分析
第五节——中断与设备驱动
一、驱动程序驱动程序是操作系统中管理特定设备的代码,它的功能包括:配置设备相关的硬件控制设备的执行处理设备产生的中断与等待设备I/O的进程进行交互驱动程序会与它所管理的设备并发执行。驱动程序必须了解设备的硬件接口。设备可以产生设备中断,在xv6中,内核中的devintr程序会处理这个中断。许多设备驱动程序会在两个上下文(context)中执行代码。这两个上下文分别是:上半部分(tophalf):在
MCQSLW
·
2024-02-06 08:34
risc-v
unix
汇编
c语言
Semaphore
源码分析
1.Semaphore定义Semaphore主要用于限量控制并发执行代码的工具类,其内部通过一个permit来进行定义并发执行的数量,其实可以理解为一个限制数量的ReadLock获取.Semaphore主要特点:Semaphore方法的实现通过Sync(AQS的继承类)代理来实现2.支持公平与非公平模式,都是在AQS的子类里面进行,主要区分在tryAcquire里面先看一个简单的demoimpor
铁甲依然在_978f
·
2024-02-06 07:12
ReentrantLock
源码分析
、LockSuppor、ReentrantReadWriteLock、锁优化的方法
ReentrantLock类图我们看一下重入锁ReentrantLock类关系图,它是实现了Lock接口的类。NonfairSync和FairSync都继承自抽象类Sync,在ReentrantLock中有非公平锁NonfairSync和公平锁FairSync的实现。在重入锁ReentrantLock类关系图中,我们可以看到NonfairSync和FairSync都继承自抽象类Sync,而Sync
_蓝天IT_
·
2024-02-06 07:12
并发编程专题
数据库
Thinkphp
使用EasyWeChat支付
config=config('web.WechatPay');//$this->config=[//前面的appid什么的也得保留哦//'app_id'=>'xxxx',//'mch_id'=>'your-mch-id',//'key'=>'key-for-signature',//'cert_path'=>'path/to/your/cert.pem',//XXX:绝对路径!!!!//'key_
swoole~
·
2024-02-06 07:18
PHP
php
ThinkPHP
函数详解:cache方法
cache方法是3.0版本开始新增的缓存管理方法。缓存初始化cache方法传入数组即表示进行缓存初始化,例如:cache(array('type'=>'xcache','prefix'=>'think','expire'=>600));支持的配置参数根据不同的缓存方式(由type参数设置),通用的缓存参数包括:如果没有设置type参数,则默认为文件缓存,cache方法目前可以支持的缓存类型包括Fi
Asteroid 325
·
2024-02-06 07:47
Thinkphp5.1
ThinkPhp
快速入门-5
ThinkPhp
3.2.3tp中的函数:1.I();用来接收前台传入的数据2.D();M();D函数和M函数的用法基本一样,不同点是M函数不会调用相关数据表模型,而D函数则可以调用使用D函数的可以给相应的
江海i
·
2024-02-06 07:47
thinkphp
mysql cache_
thinkPHP
5框架数据库连贯操作之cache()用法分析
本文实例讲述了
thinkPHP
5框架数据库连贯操作之cache()用法。分享给大家供大家参考,具体如下:介绍TP5中自带的缓存系统,是File型缓存。也就是文件型缓存。
星光心理工作室
·
2024-02-06 07:16
thinkphp
mysql
cache
thinkphp
mysql cache_TP5之Cache的原理及使用 -
thinkphp
5.0
ThinkPhp
5作为国内主流框架,提供了强大的Cac
weixin_39611546
·
2024-02-06 07:16
thinkphp
mysql
cache
thinkphp
mysql cache_
thinkPHP
5框架数据库cache()用法
本文主要介绍了
thinkPHP
5框架数据库连贯操作之cache()用法,结合实例形式分析了
thinkPHP
5中缓存cache的应用场景及连贯操作中cache的设置、更新、删除等操作技巧,需要的朋友可以参考下
马老鼠的狗鸭子
·
2024-02-06 07:46
thinkphp
mysql
cache
Thinkphp
快速入门(四)
文章目录操作数据库配置连接信息模型创建模型相关属性说明模型表名模型主键设置模型自动写入时间软删除数据插入通过create插入通过save方法保存数据更新通过save更新通过update更新通过静态update更新通过saveAll更新数据删除通过先查找到model对象后删除通过静态destroy删除通过where+delete删除模型使用软删除的场景下进行物理删除操作数据库配置连接信息config
西直门三太子
·
2024-02-06 07:42
#
Thinkphp
PHP
php
thinkphp
Thinkphp
快速入门(五)
文章目录数据库字段缓存模型查询where条件执行查询限制要查询的字段模型关联一对一关联关系定义关联数据获取hasWhere以关联限制查询一对多关联关联定义关联数据获取hasWher|has以关联限制查询数据库字段缓存由于tp进行数据查询,新增,修改,删除等都会进行(SHOWFULLCOLUMNSFROM)获取数据表字段及其数据类型对应关系每次都进行查询有点浪费资源提供两种解决方式#第一种#tpco
西直门三太子
·
2024-02-06 07:42
PHP
#
Thinkphp
php
thinkphp
thinkphp
6入门(16)-- 缓存cache用法总结
在
ThinkPHP
6中,缓存功能被集成到框架中,可以通过Cache类来使用。
软件工程小施同学
·
2024-02-06 07:37
PHP
thinkphp
ThinkPHP
3.1中的SQL注入漏洞分析----论
ThinkPHP
3.1中的半吊子的PDO封装
我总结
ThinkPHP
的PDO封装可以用买椟还珠来下结论,表面上封装了PDO支持,但实际却并没有使用到PDO的精髓部分,这不是买椟还珠是什么呢?
ww122081351
·
2024-02-06 05:35
php
服务器
iis
sql注入
漏洞
pdo
thinkphp
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他