zoukankan      html  css  js  c++  java
  • 【v2.x OGE教程 17】事务处理


    游戏代码中常常有些逻辑须要处理。因此OGE引擎加入了一个IUpdateHandler的类。

    IUpdateHandler类是OGE引擎中使用频率很之高的组件之中的一个,其本身是一个接口。内部有onUpdate以及reset两个函数等待实现,差点儿全部OGE引擎应用中都必定会看到它的身影,它也是OGengine开源引擎加入详细业务到游戏业务线程中的主要方法之中的一个。

    1.创建IUpdateHandler

    private IUpdateHandler handler = new IUpdateHandler() {

    @Override

    public void reset() {

    // TODO Auto-generated method stub

    }

    @Override

    public void onUpdate(float pSecondsElapsed) {

    // TODO Auto-generated method stub

    }

    };

    2.Updatereset方法

    update方法中的pSecondsElapsed是上一次逻辑线程执行后过去的时间(),IUpdateHandler注冊后,每次都会执行update方法

    reset方法在引擎中没有不论什么调用

    3.注冊IUpdateHandler

    //注冊一个处理程序

    public void registerUpdateHandler(final IUpdateHandler pUpdateHandler)

    注冊后IUpdateHandler会加入至List其中,逻辑线程每次会循环这些List进行更新

    4.反注冊IUpdateHandler

    public void unregisterUpdateHandler(final IUpdateHandler pUpdateHandler)

    反注冊后IUpdateHandler会在Listremove

    5.TimerHandler解说

    TimerHandlerIUpdateHandler的子类,会定时运行update方法

    /**

    @param pTimerSeconds 每次响应间隔时间 (必须>0

    @param pAutoReset 是否反复运行

    @param pTimerCallback 计时器触发callback

    */

    public TimerHandler(final float pTimerSeconds, final boolean pAutoReset, final ITimerCallback pTimerCallback)

  • 相关阅读:
    《洛谷P2296 寻找道路》
    《浙江科技学院第17届大学生程序设计竞赛:D:合并序列》
    《数论整理二》
    《洛谷P1282 多米诺骨牌》
    《洛谷P2140 小Z的电力管制》
    《洛谷P2798 爆弹虐场》
    Linux下运行C语言程序
    计算圆柱的底面积和体积
    将摄氏温度转化为华氏温度
    如果今天是星期二,那么100天后是星期几?
  • 原文地址:https://www.cnblogs.com/yfceshi/p/6991738.html
Copyright © 2011-2022 走看看