当前位置: 首页 > wzjs >正文

苏州做网站哪家好设计制作费用计入什么会计科目

苏州做网站哪家好,设计制作费用计入什么会计科目,新加坡网站开发公司,美容 北京 公司 网站建设目录 1.larV0.7-hook流程的说明 2.larV0.7-TCP_server集成链接HOOK函数 3.larV0.7-TCP_client集成链接HOOK注册功能 1.larV0.7-hook流程的说明 ### 7.1 数据库表相关查询方法实现 ​ 我们先实现一些基本的数据表达查询方法: > lars_dns/src/dns_rout…

目录

 

1.larV0.7-hook流程的说明

2.larV0.7-TCP_server集成链接HOOK函数

3.larV0.7-TCP_client集成链接HOOK注册功能


 

1.larV0.7-hook流程的说明

### 7.1 数据库表相关查询方法实现

​        我们先实现一些基本的数据表达查询方法:

> lars_dns/src/dns_route.cpp

```c
/*
 *  return 0, 表示 加载成功,version没有改变
 *         1, 表示 加载成功,version有改变
 *         -1 表示 加载失败
 * */
int Route::load_version()
{
    //这里面只会有一条数据
    snprintf(_sql, 1000, "SELECT version from RouteVersion WHERE id = 1;");

    int ret = mysql_real_query(&_db_conn, _sql, strlen(_sql));
    if (ret)
    {
        fprintf(stderr, "load version error: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    MYSQL_RES *result = mysql_store_result(&_db_conn);
    if (!result)
    {
        fprintf(stderr, "mysql store result: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    long line_num = mysql_num_rows(result);
    if (line_num == 0)
    {
        fprintf(stderr, "No version in table RouteVersion: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    MYSQL_ROW row = mysql_fetch_row(result);
    //得到version

    long new_version = atol(row[0]);

    if (new_version == this->_version)
    {
        //加载成功但是没有修改
        return 0;
    }
    this->_version = new_version;
    printf("now route version is %ld\n", this->_version);

    mysql_free_result(result);

    return 1;
}

2.larV0.7-TCP_server集成链接HOOK函数

//加载RouteData到_temp_pointer
int Route::load_route_data() 
{
    _temp_pointer->clear();

    snprintf(_sql, 100, "SELECT * FROM RouteData;");

    int ret = mysql_real_query(&_db_conn, _sql, strlen(_sql));
    if (ret)
    {
        fprintf(stderr, "load version error: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    MYSQL_RES *result = mysql_store_result(&_db_conn);
    if (!result)
    {
        fprintf(stderr, "mysql store result: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    long line_num = mysql_num_rows(result);
    MYSQL_ROW row;
    for (long i = 0;i < line_num; ++i)
    {
        row = mysql_fetch_row(result);
        int modid = atoi(row[1]);
        int cmdid = atoi(row[2]);
        unsigned ip = atoi(row[3]);
        int port = atoi(row[4]);

        uint64_t key = ((uint64_t)modid << 32) + cmdid;
        uint64_t value = ((uint64_t)ip << 32) + port;

        (*_temp_pointer)[key].insert(value);
    }
    printf("load data to tmep succ! size is %lu\n", _temp_pointer->size());

    mysql_free_result(result);

    return 0;
}

3.larV0.7-TCP_client集成链接HOOK注册功能

//将temp_pointer的数据更新到data_pointer
void Route::swap()
{
    pthread_rwlock_wrlock(&_map_lock);
    route_map *temp = _data_pointer;
    _data_pointer = _temp_pointer;
    _temp_pointer = temp;
    pthread_rwlock_unlock(&_map_lock);
}


//加载RouteChange得到修改的modid/cmdid
//将结果放在vector中
void Route::load_changes(std::vector<uint64_t> &change_list) 
{
    //读取当前版本之前的全部修改 
    snprintf(_sql, 1000, "SELECT modid,cmdid FROM RouteChange WHERE version <= %ld;", _version);

    int ret = mysql_real_query(&_db_conn, _sql, strlen(_sql));
    if (ret)
    {
        fprintf(stderr, "mysql_real_query: %s\n", mysql_error(&_db_conn));
        return ;
    }

    MYSQL_RES *result = mysql_store_result(&_db_conn);
    if (!result)
    {
        fprintf(stderr, "mysql_store_result %s\n", mysql_error(&_db_conn));
        return ;
    }

    long lineNum = mysql_num_rows(result);
    if (lineNum == 0)
    {
        fprintf(stderr,  "No version in table ChangeLog: %s\n", mysql_error(&_db_conn));
        return ;
    }
    MYSQL_ROW row;
    for (long i = 0;i < lineNum; ++i)
    {
        row = mysql_fetch_row(result);
        int modid = atoi(row[0]);
        int cmdid = atoi(row[1]);
        uint64_t key = (((uint64_t)modid) << 32) + cmdid;
        change_list.push_back(key);
    }
    mysql_free_result(result);    
}

 

 


文章转载自:

http://ZqmPtGSc.mwrsg.cn
http://1KsjWmmr.mwrsg.cn
http://4yBkMc6V.mwrsg.cn
http://9X5ACazk.mwrsg.cn
http://DkHE6SKY.mwrsg.cn
http://7igmZ6fY.mwrsg.cn
http://DesVK8oF.mwrsg.cn
http://jWNdhuJP.mwrsg.cn
http://6voTHSOq.mwrsg.cn
http://PAqdqmFj.mwrsg.cn
http://XGaUaHuF.mwrsg.cn
http://h2XHxYXY.mwrsg.cn
http://yL5H2SFp.mwrsg.cn
http://wMQU5R7u.mwrsg.cn
http://8E5AoAZ6.mwrsg.cn
http://TUtjz999.mwrsg.cn
http://fdTLvEur.mwrsg.cn
http://agciipf9.mwrsg.cn
http://qro9WUOP.mwrsg.cn
http://3HyxyxH0.mwrsg.cn
http://JNCziflG.mwrsg.cn
http://dKWyVzD2.mwrsg.cn
http://Ra3pOnPY.mwrsg.cn
http://OUV4H6oU.mwrsg.cn
http://C0Oxjah0.mwrsg.cn
http://Nhx3EP8U.mwrsg.cn
http://ynj9Xx4y.mwrsg.cn
http://GSg5vAyw.mwrsg.cn
http://CVzq1Dja.mwrsg.cn
http://jv9F79Lx.mwrsg.cn
http://www.dtcms.com/wzjs/717921.html

相关文章:

  • wp做图网站微信平台专业网站建设
  • 外贸企业网站开发淄博网站制作设计
  • 网站建设需要考虑的问题网站建设公司招网站设计
  • 网站我们的客户网站图片切换代码
  • 金坛做网站哪家好网站加友情链接
  • 遨游网站建设有限公司手机网站域名哪里注册
  • 手机网站 等比缩放个人简历模板免费下载电子版
  • 东莞网站建设市场分析望野王维
  • 动态效果的网站建设技术传奇开服表
  • 中国建设银行网站查询佛山企业手机网站建设
  • 河北新亚建设集团网站建设环保网站的目的与功能分析
  • 连云港做网站哪家好美工培训哪个机构好
  • 网站建设软件appqq空间个人网站
  • 长沙专业做网站公司网站建设和开发
  • 网站建设公司知识wordpress收件邮箱
  • 网站建设lhempire网站建建设心的
  • 跟我学做纸艺花网站浙江建设继续教育网站
  • 用vs2010做购物网站电商运营面试问题及回答
  • 漳州网站建设哪家最权威同ip多域名做同行业网站
  • 沈阳制作网站建站软件生成器下载
  • 爱站工具包怎么使用专业的昆明网站建设
  • 网站建设与运营市场风险怎么查看网站空间是否到期
  • 网站icp备案信息是什么意思南京建站在线咨询
  • 网站建设和维护管理预算郴州
  • 如何修改asp网站栏目中山vi设计公司
  • 怎样做网站设计网站建设优化佛山
  • 哪些网站可以找到做药人的信息网站开发毕业实训总结
  • 蚌埠网站建设蚌埠做海淘的网站要哪些证
  • 网站文章推广网站建设 完成
  • 如何查看 网站诊断公司如何做自己的网站