pomelo生命周期回调和组件加入

一 生命周期回调

生命周期回调可以让开发人员在不同类型的server生命周期中进行详细操作。

提供的生命周期回调函数包含:beforeStartup,afterStartup,beforeShutdown,afterStartAll。

其详细的功能说明例如以下:

beforeStartup(app, cb)
before application start components callback
Arguments
app - application object
cb - callback function

afterStartup(app, cb)
after application start components callback
Arguments
app - application object
cb - callback function

beforeShutdown(app, cb)
before application stop components callback
Arguments
app - application object
cb - callback function

afterStartAll(app)
after all applications started callback
Arguments
app - application object

详细用法:在game-server/app/servers/某一类型服务器/ 文件夹下加入lifecycle.js文件,详细文件内容例如以下:

module.exports.beforeStartup = function(app, cb) {
    // do some operations before application start up
    cb();
};

module.exports.afterStartup = function(app, cb) {
    // do some operations after application start up
    cb();
};

module.exports.beforeShutdown = function(app, cb) {
    // do some operations before application shutdown down
    cb();
};

module.exports.afterStartAll = function(app) {
    // do some operations after all applications start up
};

二 组件

首先。在app/components/加入HelloWorld.js文件, 大致代码例如以下:

// components/HelloWorld.js
module.exports = function(app, opts) {
  return new HelloWorld(app, opts);
};

var HelloWorld = function(app, opts) {
  this.app = app;
  this.interval = opts.interval | DEFAULT_INTERVAL;
};

HelloWorld.name = ‘__HelloWorld__‘;

HelloWorld.prototype.start = function(cb) {
  console.log(‘Hello World Start‘);
  cb();
}

HelloWorld.prototype.afterStart = function (cb) {
  console.log(‘Hello World afterStart‘);
  cb();
}

HelloWorld.prototype.stop = function(force, cb) {
  console.log(‘Hello World stop‘);
  cb();
}

这样一个组件就创建完毕了。然后在app中配置。在masterserver中载入:

var helloWorld = require(‘./app/components/HelloWorld‘);

app.configure(‘production|development‘, ‘master‘, function() {
  app.load(helloWorld, {interval: 5000});
});

三 演示样例

我这边是在arena服务中增加了lifecycle,同一时候加了一个组件,步骤例如以下。

1 启动过程

2 关闭过程

时间: 2024-10-14 02:56:22

pomelo生命周期回调和组件加入的相关文章

pomelo生命周期回调和组件添加

一 生命周期回调 生命周期回调能够让开发者在不同类型的服务器生命周期中进行具体操作. 提供的生命周期回调函数包括:beforeStartup,afterStartup,beforeShutdown,afterStartAll. 其具体的功能说明如下: beforeStartup(app, cb) before application start components callback Arguments app - application object cb - callback functio

Bean 注解(Annotation)配置(2)- Bean作用域与生命周期回调方法配置

Spring 系列教程 Spring 框架介绍 Spring 框架模块 Spring开发环境搭建(Eclipse) 创建一个简单的Spring应用 Spring 控制反转容器(Inversion of Control – IOC) 理解依赖注入(DI – Dependency Injection) Bean XML 配置(1)- 通过XML配置加载Bean Bean XML 配置(2)- Bean作用域与生命周期回调方法配置 Bean XML 配置(3)- 依赖注入配置 Bean XML 配置(

简单记录一下vue生命周期及 父组件和子组件生命周期钩子执行顺序

首先,vue生命周期可以用下图来简单理解 当然这也是官方文档的图片,详细的vue周期详解请参考这里 然而当同时存在父子组件的时候生命周期钩子是如何执行的呢? 请看下文: 加载渲染过程父beforeCreate->父created->父beforeMount->子beforeCreate->子created->子beforeMount->子mounted->父mounted 子组件更新过程父beforeUpdate->子beforeUpdate->子up

Spring Bean生命周期回调方法

参阅官方文档:https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#beans-factory-lifecycle 第一种方式:使用@PostConstruct注解,进行标注当前非init()名称的方法,进行bean声明周期的初始化操作:@PostConstruct和@PreDestroy是当前Bean声明周期的初始化回调和销毁时回调 第二种方式:当前类实现InitializingBean和

Spring Bean生命周期回调

参阅官方文档:https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#beans-factory-lifecycle 第一种方式:使用@PostConstruct注解,进行标注当前非init()名称的方法,进行bean声明周期的初始化操作:@PostConstruct和@PreDestroy是当前Bean声明周期的初始化回调和销毁时回调 第二种方式:当前类实现InitializingBean和

Android 更好的Activity生命周期回调

/** * This class allows you to listen to when the user is entering the background (i.e. after a home button press, * or opening recent apps etc) and when the user resumes the application from the background. * * @author John McDonnell */ public class

Android组件生命周期(三)

Android系统试图尽可能长地保持一个应用程序进程,但是当内存低时它最终还是需要移除旧的进程.为了决定保持哪个进程及杀死哪个进程,Android将每个进程放入一个基于运行于其中的组件的重要性等级和这些组件的状态.重要性最低的进程首先被杀死,然后是次低,以此类推.总共有5个层次等级.下列清单按重要性顺序列出: 前台进程,用户当前工作所需要的.一个进程如果满足下列任何条件被认为是前台进程: 它正运行着一个正在与用户交互的活动(Activity对象的onResume()方法已经被调用). 它寄宿了一

Android React Native组件的生命周期

和Android一样,React的组件也有对应的生命周期.Android React Native组件的生命周期可以总的概括为下面这一张图. 可以把组件生命周期大致分为三个阶段: 第一阶段:是组件第一次绘制阶段,如图中的上面虚线框内,在这里完成了组件的加载和初始化: 第二阶段:是组件在运行和交互阶段,如图中左下角虚线框,这个阶段组件可以处理用户交互,或者接收事件更新界面: 第三阶段:是组件卸载消亡的阶段,如图中右下角的虚线框中,这里做一些组件的清理工作. 生命周期回调函数总共有10个. obje

【转】Android开发之旅:组件生命周期

组件生命周期(一) 引言 应用程序组件有一个生命周期——一开始Android实例化他们响应意图,直到结束实例被销毁.在这期间,他们有时候处于激活状态,有时候处于非激活状态:对于活动,对用户有时候可见,有时候不可见.组件生命周期将讨论活动.服务.广播接收者的生命周期——包括在生命周期中他们可能的状态.通知状态改变的方法.及这些状态的组件寄宿的进程被终结和实例被销毁的可能性. 本文主要讨论活动的生命周期及他们可能的状态.通知状态改变的方法.分为以下三部分: 1.活动生命周期 2.保存活动状态 3.协