定义supervisor时,如果是监控celuesimple_one_for_one则删除children的时候就用supervisor:terminate_child (SupModuleName, ChildPid),如果shutdown策略选择的是brutal_kill,那么supervisor会调用exit(ChildPid, kill),这样的话如果Child的behavior是gen_server,则不会调用他的terminate函数,而是直接退出。
如果shutdown策略选择的是数字(超时时间),那么supervisor会调用exit(ChildPid, shutdown),这样的话如果Child的behavior是gen_server,则会调用他的terminate函数,然后返回给supervisor一个exit回应信号,然后再退出。
相关推荐
### Erlang Supervisor Behaviour详解 #### 一、Erlang Supervisor简介与作用 Erlang Supervisor是Erlang四大Behaviour之一,主要负责管理监控树(supervision tree)中的子进程,确保系统的稳定运行。在Erlang...
**Erlang编程:Introducing Erlang** Erlang是一种函数式编程语言,由爱立信在1986年开发,主要用于构建高可用性、容错性和并发性的分布式系统。"Introducing Erlang"是Simon St. Laurent撰写的一本入门级教程,...
- **OTP(开放电信平台)**:Erlang OTP是一套库和设计原则,提供了构建可靠系统的框架,包括Mnesia数据库、Event Manager、Supervisor和GenServer等行为模块。 学习Erlang时,你需要掌握以下核心概念: - **BEAM...
受 Erlang Supervisor 和 Process 类的启发,它们通过将协程彼此隔离来启用容错并行应用程序,从而防止协程中的异常使主要 nodejs 进程崩溃。安装 npm install domain-supervisor用法 var Supervisor = require('...
书中可能讲解了OTP的设计原则和组件,如GenServer、GenEvent和Supervisor等。 3. **错误处理与容错**:Erlang推崇“let it crash”哲学,鼓励程序在遇到错误时快速失败并重启,而不是尝试修复。书里可能会讨论如何...
OTP的引入进一步强化了这种并发能力,提供了诸如GenServer、Supervisor、GenEvent等行为模式,以规范化并发程序的设计。这些模式帮助开发者构建可复用、容错的组件,降低了系统的复杂性。 总的来说,如果你想要深入...
8. **错误处理**:Erlang鼓励使用“失败-快速”策略,即在检测到错误时立即崩溃,然后由Supervisor树自动重启,以恢复系统的稳定状态。 9. **模式匹配**:Erlang中的模式匹配是其语法的一个强大特性,可以方便地...
OTP是基于Erlang的一套设计原则和库,它提供了标准的组件和模式,如GenServer、GenEvent和Supervisor等,用于构建可靠的分布式系统。OTP的核心理念是模块化、可复用和容错性,通过这些组件,开发者可以快速构建出...
OTP包括一系列的行为模式,如GenServer、GenEvent和Supervisor,这些帮助开发者轻松实现状态管理、事件处理和容错机制。 此外,Erlang的REPL(Read-Eval-Print Loop)环境允许开发者快速测试代码并查看结果,这...
1. **Erlang OTP(Open Telecom Platform)**:Erlang OTP是一个标准库,提供了强大的模块化设计和容错机制,包括行为模式如GenServer、GenEvent和Supervisor等,这些对于构建可靠的TCP服务器至关重要。 2. **...
9. 高可用性和容错性:OTP提供了一套名为Supervisor的行为,用于创建和管理进程树,当子进程失败时,Supervisor可以自动重启它们,确保系统的持续运行。 总结起来,"otp_src_21.3.tar.gz"是一个包含Erlang OTP框架...
在Erlang编程环境中,`Supervisor`是 OTP(Open Telephony Platform)设计模式中的一种,它是构建可靠、容错系统的重要组成部分。本篇博客的附件着重探讨了如何使用Erlang的`Supervisor`模块,并通过编写代码来演示...
Erlang是一种面向并发的、函数式编程语言,特别适合于构建高可用性和容错性的分布式系统。在Erlang中,"应用"(application)是组织代码的基本单元,它包含了模块、配置文件以及启动和停止应用程序的逻辑。在这个...
4. **OTP(Open Telecom Platform)框架**:OTP提供了一组标准库和设计模式,用于构建可靠的、可维护的系统,包括Mnesia数据库、Supervisor进程监控和GenServer行为模式等。 5. **函数式编程**:Erlang采用函数式...
OTP提供了一系列预定义的行为(如GenServer、GenEvent和Supervisor),它们是实现可靠、容错服务的基石。Supervision树是OTP的核心概念,用于组织和管理进程,确保系统在部分故障时能够自动恢复。 总之,Erlang设计...
OTP是Erlang生态系统的核心,提供了一系列库和设计模式,如行为(Supervisor、GenServer等)、应用程序框架和工具,帮助开发者构建可靠、可维护的系统。 8. **Erlang源码分析** 配套的源码文件可以帮助读者更好地...
OTP是Erlang的一个重要框架,提供了许多预定义的行为模式和库,如GenServer、GenEvent、Supervisor等,它们帮助开发者遵循良好的软件工程实践,实现模块化、容错和监控。 **Erlang的手册与中文教程** `...
它包括Erlang虚拟机(BEAM)、进程间通信机制、错误处理工具以及一系列预先设计好的行为模式(Behaviours),如GenServer、GenEvent和Supervisor,这些模式提供了强大的容错和恢复能力。 **2. ERTS - Erlang Run-...
理解并熟练运用OTP组件,如GenServer、GenEvent和Supervisor,是成为一名熟练的Erlang开发者的关键。 总的来说,“Erlang资料大全”这个压缩包提供的资源将帮助学习者从零开始了解Erlang,掌握其基本语法、并发模型...
4. **Supervisor**:在Erlang OTP(开放电信平台)中,Supervisors是行为模式之一,用于实现容错和重启策略。`bank1_sup`模块应包含一个`supervisor`行为的实现,负责启动和监控子进程。 5. **模块和功能**:在`src...