zoukankan      html  css  js  c++  java
  • X Window研究笔记(21)

    X Window研究笔记(21)

    转载时请注明出处和作者联系方式
    作者联系方式:李先静 <xianjimli at hotmail dot com>

    21.X Window 字符串与Atom

    Atom是X Window中的一大特色,不把它弄清楚,可能会对阅读其它代码形成障碍。X Window把常用的字串用一个hash表来管理,并给这些字符串赋与一个ID,客户端通过ID引用字符串,避免在客户端和服务器端之间来回传递这些它们,这样可以大大提高传输效率。另外Atom是一个整数,对整数的比较也比对字符串的比较有更快的速度。管理Atom的主要函数有:

    Atom
    MakeAtom(
    string, len, makeit)
        
    char *string;
        unsigned len;
    Bool makeit;

    char *     
    NameForAtom(atom)
        Atom atom;
    {      
        NodePtr node;
        
    if (atom > lastAtom) return 0;
        
    if ((node = nodeTable[atom]) == (NodePtr)NULL) return 0;
        
    return node->string;                
    }
              

    void   
    FreeAtom(NodePtr patom)
    {      
        
    if(patom->left)
            FreeAtom(patom
    ->left);
        
    if(patom->right)
            FreeAtom(patom
    ->right);
        
    if (patom->> XA_LAST_PREDEFINED)
            xfree(patom
    ->string);
        xfree(patom);
    }


    (待续)
     
  • 相关阅读:
    引入其他字体库 和 字体样式设置
    onmousemove鼠标截取
    最大、最小值
    ruby环境sass编译中文出现Syntax error: Invalid GBK character错误解决方法
    时间戳
    JS性能优化 -- 函数节流
    css兼容问题
    上传文件(ajax结合form表单)
    文件下载
    input上传指定类型的文件
  • 原文地址:https://www.cnblogs.com/zhangyunlin/p/6167666.html
Copyright © 2011-2022 走看看