zoukankan      html  css  js  c++  java
  • FREESWITCH SEESION

    SESSION

    SESSIONFS的核心概念之一,所以需要拿出来专门的分析下。

    从以下几个方面进行分析,结构类型,资源的管理,对于呼叫的意义,规格。

    1、结构类型

    每一次呼叫会申请一个session,并为每个申请的session申请一个channelChannel为每次呼叫的实体,呼叫中状态机状态就是从channel中获取。新申请的channelstateCS_NEWrunning_stateCS_NONE

    相互关系为:

    SESSION结构为:switch_core_session

    CHANNEL结构为:switch_channel

    2、资源管理

    FS运行时可能存在多路呼叫,即会产生多个SESSION。对于SESSION的查找和管理通过全局结构变量session_manager实现,其keyUUID

    FS运行中会执行大量的回调函数。SESSION中的变量endpoint_interface保存了全局函数指针endpoint_interface的地址。从而实现了会话的入局回调,出局回调函数的统一个调用。

    FS主要是C语言完成的,所以要小心的保护好全部变量的值,在申请SESSION的时申请了各种类型的信号量,用来保证系统的正常的运行。

    FS也是消息驱动的系统。所以申请SESSION的时候申请了2个消息队列,3个事件队列(FIFO也是FS的一个核心概念,以后进行描述,这里不再详细记录。)

  • 相关阅读:
    DeflateStream类
    BufferedStream类
    FileStream类
    Asp.net MVC Comet 推送
    MVC 读书笔记
    MVC部署
    MVC系统过滤器、自定义过滤器
    MVC 路由规则
    MVC 模型绑定
    边双+点双模板
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3174521.html
Copyright © 2011-2022 走看看