首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏开发框架-Spring Boot

    【Spring Boot 源码学习】共享 MetadataReaderFactory 上下文初始化

    《Spring Boot 源码学习系列》一、引言上篇博文《深入 ApplicationContext 初始化实现》,Huazie 带大家详细分析了 分析 Spring Boot 中预置的应用上下文初始化实现 那本篇就来对其中的 SharedMetadataReaderFactoryContextInitializer 【即 共享 MetadataReaderFactory 上下文初始化】详细分析下。 ConfigurableApplicationContext> 和 Ordered 接口:ApplicationContextInitializer<ConfigurableApplicationContext> :应用上下文初始化接口类 Ordered :实现该接口可以控制应用上下文初始化实现类的执行顺序,有关这点我们可以查看 SpringApplication 的 getInitializers 方法。 三、总结本篇 Huazie 带大家一起分析了 spring-boot-autoconfigure 子模块中预置的 应用上下文初始化实现 SharedMetadataReaderFactoryContextInitializer

    38721编辑于 2024-10-06
  • 来自专栏开发框架-Spring Boot

    【Spring Boot 源码学习】ConditionEvaluationReport 日志记录上下文初始化

    《Spring Boot 源码学习系列》 一、引言 上篇博文《共享 MetadataReaderFactory 上下文初始化》,Huazie 带大家详细分析了 SharedMetadataReaderFactoryContextInitializer 而在 spring-boot-autoconfigure 子模块中预置的上下文初始化中,除了共享 MetadataReaderFactory 上下文初始化,还有一个尚未分析。 那么本篇就来详细分析一下 ConditionEvaluationReportLoggingListener 【即 ConditionEvaluationReport 日志记录上下文初始化】。 DEBUG【默认通过它实例化该上下文初始化】 带 LogLevel 参数的构造方法:Assert.isTrue 是用于验证一个条件是否为真。 三、总结 本篇 Huazie 带大家一起分析了 spring-boot-autoconfigure 子模块中预置的另一个应用上下文初始化实现 ConditionEvaluationReportLoggingListener

    49412编辑于 2024-11-12
  • 来自专栏技术杂记

    Linux 初始化检查列表9

    例如:sysstat、iotop、vmstat、netstat、zabbix-agent

    1.2K30编辑于 2021-11-26
  • 来自专栏xiaoheike

    Spring MVC 上下文(ApplicationContext)初始化入口

    更有可能出现在Spring项目的代码测试,不过呢,单元测试的框架(比如 JUnit)已经提供了简单的方式,也就不建议直接实例化上下文。 因为实例化一个上下文还得要做维护,再者现在常用的是基于Web的开发,也就是常用 Spring MVC。 web项目的开发关键点在于让web容器初始化之后提醒Spring ApplicationContext 初始化,例如 tomcat 的 ServletContext 会维护一个 WebApplicationContext -- 上下文参数,在监听中被使用,实际就是key-value,key=contextConfigLocation 写死 --> <context-param> <param-name -- 监听配置,初始化 WebApplicationContext --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener

    2.1K10发布于 2018-09-13
  • 来自专栏罗西的思考

    PyTorch 分布式(9) ----- DistributedDataParallel 之初始化

    [源码解析] PyTorch 分布式(9) ----- DistributedDataParallel 之初始化 目录 [源码解析] PyTorch 分布式(9) ----- DistributedDataParallel 它具有三个入口点函数: Reducer: 其构造函数在distributed.py被调用,Reducer将注册 Reducer::autograd_hook()到梯度累加。 当一个梯度准备好时,它在该梯度累加上的相应 DDP 钩子将触发。 在 autograd_hook 之中进行all-reduce。 Optimizer Step: 从优化的角度来看,它正在优化本地模型。 所有 DDP 进程上的模型副本都可以保持同步,因为它们都从相同的状态开始,并且在每次迭代中都具有相同的平均梯度。 # 之前在初始化过程中,设定了 self.

    1.7K40发布于 2021-11-24
  • 来自专栏编程黑洞

    python上下文管理

    # 什么是上下文管理 python中使用with来使用上下文管理. 在使用某个资源时,可以对该资源进行初始化和资源的清理两个操作,在这两个操作之间边成为上下文。 f = open("a.txt") f.write("hello world") f.close() 使用上下文管理 打开文件后,得到文件描述符,在with代码块中对f进行操作,结束时,会自动的进行关闭操作 . with open("a.txt") as f: f.write("hello world") # 自定义上下文管理 # 类实现 进入上下文时,调用__enter__方法进行初始化,退出时 hello") print("world") output: 进入 hello world 释放资源 # 方法实现 使用contextlib.contextmanager 对方法实现上下文管理

    40811编辑于 2023-03-06
  • 来自专栏zingpLiu

    Python上下文管理

    1 让对象支持上下文管理协议 在类中,实现 __enter__()和__exit__()方法,类创建的对象就支持with语句。 Connection(('www.python.org', 80)) with conn as s1: print(s1) with conn as s2: print(s2) 2 装饰上下文管理 上面介绍了在类和对象中实现上下文管理协议,其实Python标准库中contextlib包的@contextmanager装饰能够轻松实现一个上下文管理,下例是用其实现统计代码块耗时的上下文管理: import time from contextlib import contextmanager # 来看一个装饰版本的上下文管理 # 检查代码消耗时间块 @contextmanager def 上下文管理可以应用在事务中: # 更高级的事务管理 @contextmanager def list_transaction(orig_list): working = list(orig_list

    66950发布于 2018-09-05
  • 来自专栏dongfanger

    Python上下文管理

    with语句会设置一个临时的上下文,交给上下文管理对象控制,并且负责清理上下文。 Python上下文管理对象存在的目的就是管理with语句。 实现一个上下文管理 上下文管理协议包含__enter__和__exit__两个方法,所以要实现一个上下文管理,就得实现这两个方法,比如: class LookingGlass: def return True __enter__是上下文管理的入口,在with语句开始运行时调用。 __exit__是上下文管理的出口,在with语句运行结束后调用。 把生成器变为上下文管理 使用@contextmanager装饰能减少创建上下文管理的样板代码量,只需要实现一个有yield语句的生成器,生成想让__enter__方法返回的值。

    47810编辑于 2021-12-10
  • 来自专栏深度学习与计算机视觉

    Python 上下文管理

    当然我们是可以通过关闭会话的方式回收资源,还有一种更为简便的方式就是使用Python的上下文管理。 在说明TensorFlow的会话操作之前,先介绍上下文管理和它的一个其他使用。 我们在开头定义了一个IplImage类型的变量,总要在程序结束前 cvReleaseImage它,不然就会造成内存的泄漏,而这也是1.0版本的一个很大的诟病,直到2.0版之后引入了Mat类型,而Python的上下文管理就相当于 (这个例子可能并不准确,但是可以直观的说明上下文管理的最大优点:简便的内存管理,异常下的内存回收) 下面举一个简单的例子,比如我们想要完成一个文件写入的任务: 1.用手动收回的方式: logger 3.使用上下文管理 with open("log.txt", "w") as logger: logger.write('Hello ') logger.write('World') print logger.closed 是的,只需要在程序块前加上with,就可以实现上下文管理的功能,比方法2简洁了很多。

    81190发布于 2018-01-02
  • 深入解析Spring Boot核心启动流程与上下文初始化

    :根据应用类型(Web或非Web)创建对应的ApplicationContext实现类 前置处理阶段:执行所有的ApplicationContextInitializer 刷新上下文阶段:调用 :注册并实例化所有的BeanPostProcessor 初始化消息源:用于国际化处理 初始化事件广播:建立应用事件发布机制 初始化特殊Bean:实例化实现了特定接口的特殊Bean 注册监听:注册所有的事件监听 () - 初始化应用事件广播 onRefresh() - 模板方法,子类可以覆盖 registerListeners() - 注册监听 finishBeanFactoryInitialization Bean后置处理注册 registerBeanPostProcessors()阶段负责注册所有检测到的BeanPostProcessor。这些后置处理会在Bean实例化、初始化的不同阶段介入处理。 initApplicationEventMulticaster():初始化事件广播 onRefresh():模板方法(Spring Boot在此处内嵌Web服务启动) registerListeners

    74510编辑于 2025-08-27
  • 来自专栏Linux

    Rocky Linux 9 系统初始化与安全加固脚本

    Rocky Linux 9 系统初始化与安全加固脚本在服务运维与系统管理的实际场景中,一个安全、稳定、标准化的系统环境至关重要。 为节省重复配置的时间、降低人为操作失误率,同时提升系统的安全性,编写一套系统初始化与安全加固脚本显得尤为必要。 本文将基于 Rocky Linux 9,介绍如何通过 Shell 脚本实现系统初始化配置(如时间同步、YUM 源更换、基础软件安装)、安全加固(如 SSH 配置、密码策略、防火墙规则等)的一体化自动部署 # sh Rocky_Linux_9_system_init_shell_mini.sh或者wget -qO- https://gitee.com/funet8/Rocky-Linux-Shell/raw ,我们能够在部署 Rocky Linux 9 系统后,第一时间完成标准化配置与安全防护,大幅提升系统上线的效率与安全性。

    74620编辑于 2025-07-10
  • 来自专栏Devops专栏

    Python with与上下文管理

    仅供学习,转载请注明出处 with与“上下文管理” 如果你有阅读源码的习惯,可能会看到一些优秀的代码经常出现带有 “with” 关键字的语句,它通常用在什么场景呢? 在讲 with 的原理前要涉及到另外一个概念,就是上下文管理(Context Manager)。 什么是上下文(context) 上下文在不同的地方表示不同的含义,要感性理解。 哦,上下文就是这样? ? 不然呢 上下文管理 任何实现了 __enter__() 和 __exit__() 方法的对象都可称之为上下文管理上下文管理对象可以使用 with 关键字。 因为 File 类实现了上下文管理,现在就可以使用 with 语句了。 使用@contextmanager实现上下文管理的另外方式 Python 还提供了一个 contextmanager 的装饰,更进一步简化了上下文管理的实现方式。

    75451发布于 2019-05-31
  • 来自专栏鸿的学习笔记

    python的上下文管理

    上下文管理其实是with语句,这是为了简化try/finally模式,这可以保证一段代码在运行完之后,即使出现错误也能正确的运行。 就跟前面的系列文章所述,上下文管理也是一种协议,包含__enter__和__exit__方法。在with语句开始运行是会调用__enter__方法,结束后会调用__exit__方法。 说了这么多,这意味着我们也可以制造一个上下文管理,只要实现了__enter__和__exit__方法。 ExitStack", "redirect_stdout", "redirect_stderr", "suppress"] 其中,contextmanager可以把简单的生成器函数变成上下文管理

    68540发布于 2018-08-06
  • 来自专栏blackheart的专栏

    7-索引初始化

    { 1, "Value1" }, 5 { 2, "Value2" }, 6 { 3, "Value3" } 7 }; 8 } 早C#3中引入的集合初始化 ,可是让我们用上面的语法来在声明一个字典或者集合的时候立即初始化一些项进去,其实在C#3中这是个语法糖,实质编译后的结果是调用字典或者集合的Add方法逐一添加这些项。 索引初始化 1 private static void Main() 2 { 3 var dictionary = new Dictionary<int, string> 4 { 5 [1] = "Value1", 6 [2] = "Value2", 7 [3] = "Value3" 8 }; 9 } 看起来直观许多了吧,其实是一种语法改进。 set访问(set_Item)。

    83170发布于 2018-01-19
  • 来自专栏技术之路

    c#对象初始化

    c#对象初始化 以往在对对象属性进行初始化时我们一般会使用构造方法的形式对对象属性进行初始化,如 class Program { static void Main(string this.name = name; this.sex = sex; } } } 而使用对象初始化 相同点:都可以完成对象属性的初始化 不同点 1.构造函数具有强制性,而对象初始化没有强制性 这个强制性怎么说,首先在用构造函数时,对每个属性赋值,必须和构造函数声明的变量属性相同。 name = "java", age = 25, sex = "男" }; 2.对象初始化只能完成属性的初始化 如构造方法可以在对象创建时读取文件,或者进行一些数据的判断,而在对象初始化中只能进行赋值的操作 3.对象初始化是在创建对象的时候使用,而构造方法是写在类里面 对象初始化无需写方法一类的可以直接赋值

    41910编辑于 2024-04-23
  • 来自专栏吾非同

    Python上下文管理详解

    当然,上下文的管理的作用不止于此,它内部的实现机制,能很好的处理代码异常,提升代码的复用性。 什么是上下文管理上下文管理上下文管理是指在一段代码执行之前,执行一些预处理的工作,代码执行之后再执行一些清理工作。 上下文管理中有__enter__()和 __exit__() 两个方法,__enter__()方法在执行 with 后面的语句时执行,一般用来处理操作前的内容,比如一些创建对象,初始化等;__exit 上下文管理的使用 #自定义一个上下文管理类 class MyOpen(): def __init__(self): print("初始化方法") def __enter 上下文管理的异常处理 根据上下文管理的原理,上下文管理是实现了__enter__()和 __exit__() 这两个方法,所以我们可以根据此原理来自定义自己的上下文管理

    84530发布于 2020-12-17
  • 来自专栏扎心了老铁

    python contextlib 上下文管理

    实际上,任何对象,只要正确实现上下文管理,就可以使用with语句。实现上下文管理是通过 __enter__ 和 __exit__ 这两个方法实现的。 2、上下文管理 上下文管理可以为我们屏蔽上下文的复杂性。例如,我们实现一个类Cat,实现其__enter__和__exit__方法。 __enter__(self): 进入上下文管理时调用此方法,其返回值将被放入with-as语句中as说明符指定的变量中。 __exit__(self,type,value,tb):离开上下文管理调用此方法。如果有异常出现,type、value、tb分别为异常的类型、值和追踪信息。如果没有异常, 3个参数均设为None。 Kitty enter cat named Tom hello, Kitty hello, Tom exit cat named Tom exit cat named Kitty 4、最后给出一个实例 使用上下文管理实现

    90580发布于 2018-03-05
  • 来自专栏程序员的园——原创文章

    聚合体及其初始化———指派初始化,C++长大了,你应该知道指派初始化

    以空初始化列表({})初始化边界未知的数组。 ,使用指派初始化列表初始化时可以直接使用联合体成员的指派初始化进行初始化。 (example 1 ) 当初始化以嵌套的形式初始化对象,初始化内的数据以及初始化子句均对应某个元素的初始化,且对应顺序为聚合体内元素的声明顺序,初始化时可以隐式转换,但是不能窄化转换。 a.x,以 2 初始化 a.b.b1,以 3 初始化 a.b.b2 a = {1, {2, 3.0}}; // error, 存在窄化转换 指派初始化 以上其实已涉及导指派初始化, ,当出现窄化转换会报错(example 222) 只能为联合体指定一个初始化,无论联合体作为聚合体抑或联合体作为聚合体内元素时,均只能为其指定一个初始化(example 223) 对于非联合体的聚合体未提供指派初始化的元素

    52810编辑于 2024-07-18
  • 来自专栏JavaEdge

    DDD的9上下文映射模式,你用过哪些?

    描述团队之间的协作关系及上下文之间的集成关系。决定上下文之间如何集成及如何设置防腐层。 1.2 为何需要上下文映射? 尽管我们拆分了系统,它们终究还是一个系统,免不了交互。 比如: 一个用户下了订单,这是在订单上下文中完成的 用户要去支付,这是在支付上下文中完成的 我们要通过某种途径让订单上下文的一些信息发送到支付上下文。 在我们定义好不同的限界上下文,将它们之间的交互呈现出来之后,就得到了一张上下文映射图。上下文映射图是可以帮助我们理解系统的各个部分之间,是怎样进行交互的,建立全局性认知。 日常开发很常见问题,由于限界上下文,当我们不同上下文之间需要交互时,如何将同一概念模型进行映射呢?就需要上下文映射。 意味着两个上下文之间根本没有关系,无需控制,也不需要承诺。在一个复杂的模型,存在着许多上下文,而大部分上下文之间应无直接依赖关系的。如账户子域(上下文)和物流子域(上下文)之间就没有直接联系。

    76910编辑于 2025-05-29
  • 来自专栏测试游记

    9-正则提取

    正则提取 apply to ? apply to Main sample and sub-samples 主取样+子取样 Main sample only 主取样 Sub-sample only 子取样 JMeter Variable 填写 在「调试取样」中可以看到reg_msg被正确赋值为我们正则匹配到的内容 ? 查看结果 脚本性能转换 在jmeter中,默认一个取样的一次请求,就是一个事务 如果想要把多个接口合并成为一个事务,合计「tps」值。 需要添加「事务控制」 一定要勾选「generate parent sample」 ?

    1K20发布于 2021-04-29
领券