文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>android init.rc action server tiggers 触发机制和原理

android init.rc action server tiggers 触发机制和原理

时间:2010-12-26  来源:城市守望者

除了boot 还有init,early-init等(新版本还会有新的添加),我们可以简单的在init.rc中直接使用。这些信号从system/core/init/init.c 中发出,且有一定的顺序。
发射这些triggers,及执行tiggers所引发的命令执行函数为(都在system/core/init/init.c 中定义):

    action_for_each_trigger("init", action_add_queue_tail);
    drain_action_queue();

另外trigger发送和执行在system/core/init/builtins.c 中得到封装:
  int do_trigger(int nargs, char **args)
    {
        action_for_each_trigger(args[1], action_add_queue_tail);
        drain_action_queue();
        return 0;
    }
从init.rc的解析代码system/core/init/parser.c 来看这个trigger 命令应该在init.rc使用也是有效的。
至此我们已经知道trigger的名字可以自己定制,

触发方式分两种:
1。在代码中触发
2。在init.rc中命令触发trigger

 目前触发点有:
 1.init.c中代码触发

server triggers

server的触发信号的点和方式:<name>=<value>,device-added-<path>,device-removed-<path>,service-exited-<name> 因该很有用,暂没研究。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载