亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.c

?? PB 熟悉的哥們希望大家可以互相學習一下
?? C
字號:
/************************************************************
 *                                                          *
 * Copyright (c) 2001-2007 McObject LLC. All Right Reserved.*
 *                                                          *
 ************************************************************/

/*
 * This sample demonstrates the use of "compact" declaration.
 *
 * Schema declares 2 classes with the same set of fields, only
 * one is declared with the "compact" quilifier. The sample code
 * writes the same "raw" data into each of the classes and
 * calculates the amount of memory used to store the objects
 * within normal and compact layout.
 *
 * This sample uses data schema from compact.mco file
 */

#include "platform.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "compactdb.h"

/* Total data size is 8 Mbytes, with 100 bytes pages */
#define DBSIZE (1024*8000)
#ifndef MCO_PLATFORM_X64
    #define PAGESIZE 100
#else 
    #define PAGESIZE 200
#endif 


const char dbName[] = "compact";
const int MAP_ADDRESS = 0x20000000;

#define FACTOR   1
#define NOBJECTS 20

void _SH_(void)
{

    char text[] = 
    {
        "\nThis sample demonstrates the use of \"compact\" declaration.\n"
            "Schema declares 2 classes with the same set of fields, only\n"
            "one is declared with the \"compact\" quilifier. The sample code\n"
            "writes the same \"raw\" data into each of the classes and\n"
            "calculates the amount of memory used to store the objects\n""within normal and compact layout.\n"
    };
    char text1[] = 
    {
        "Copyright (c) 2001-2007 McObject LLC. All Right Reserved.\n\n"
    };

    printf("%s\neXtremeDB runtime version %d.%d, build %d\n%s\n\nPress Enter to start", text, MCO_COMP_VER_MAJOR,
           MCO_COMP_VER_MINOR, MCO_COMP_BUILD_NUM, text1);

    getchar();

}


static uint4 show_mem(mco_db_h db)
{
    mco_puint totalpg, freepg;
    uint2 pgsize;

    mco_db_free_pages(db, &freepg);
    mco_db_total_pages(db, &totalpg);
    mco_db_page_size(db, &pgsize);

    printf("\nMem: total pgs=%d, free pgs=%d, used and reserved %d Kb", totalpg, freepg, (totalpg - freepg)* pgsize /
           1024);

    return (uint4)(((totalpg - freepg)* pgsize / 1024));
}


/*
 * Writes NOBJECTS of Small or Large objects into the database, depending
 * on the obj_code.
 */
static int write_objs(mco_db_h db, const int obj_code)
{
    uint2 i, n;
    MCO_RET rc = 0;
    mco_trans_h t;
    Small smallobj;
    Large large;
    Expr optexp;
    char expression[64], text[32];
    //	char            text_in[30] = {0};
    uint4 raw_size = 0;
    uint4 start_mem, end_mem;

    start_mem = show_mem(db);

    for (i = 0; i < NOBJECTS; i++)
    {
        mco_trans_start(db, MCO_READ_WRITE, MCO_TRANS_FOREGROUND, &t);

        if (obj_code == Small_code)
        {
            rc = Small_new(t, &smallobj);
        }
        else
        {
            rc = Large_new(t, &large);
        }

        if (rc)
        {
            mco_trans_rollback(t);
            return rc;
        }

        // write "structure" data every other itteration
        if (i % 2)
        {
            if (obj_code == Small_code)
            {
                rc = Small_eval_write_handle(&smallobj, &optexp);
            }
            else
            {
                rc = Large_eval_write_handle(&large, &optexp);
            }

            if (rc)
            {
                mco_trans_rollback(t);
                return rc;
            }

            Expr_time_in_put(&optexp, (uint4)time(NULL));
            raw_size += sizeof(uint4);

            sprintf(expression, "if (%c%d%c%d%c%d.GE.%d%c%d%c%d%c)", 'A' - i, (73* i) % 2, 'B' - i, (89* i) % 3, 'C' -
                    i, (31* i) % 7, (37* i) % 2, 'D' - i, (98* i) % 3, 'E' - i, (13* i) % 7, 'F' - i);
            Expr_expression_put(&optexp, expression, (uint2)strlen(expression));
            raw_size += (uint4)strlen(expression);
        }
        // write vector
        if (obj_code == Small_code)
        {
            rc = Small_texts_alloc(&smallobj, (uint2)((i + 1)* FACTOR));
        }
        else
        {
            rc = Large_texts_alloc(&large, (uint2)((i + 1)* FACTOR));
        }

        for (n = 0; n < (i + 1)* FACTOR; n++)
        {
            sprintf(text, "abcdefghigklmnopqrs_etc..._%d", n);
            if (obj_code == Small_code)
            {
                Small_texts_put(&smallobj, n, text, (uint2)strlen(text));
            }
            else
            {
                Large_texts_put(&large, n, text, (uint2)strlen(text));
            }

            raw_size += (uint4)strlen(text);
        }
        rc = mco_trans_commit(t);
    }

    end_mem = show_mem(db);
    printf("\n%dK used to store %d objects, raw_size=%dK, %dK overhead\n", end_mem - start_mem, i, raw_size / 1024,
           end_mem - start_mem - raw_size / 1024);
    return rc;
}


int main(void)
{

    MCO_RET rc;
    mco_db_h db = 0;
    //	uint2		  sensor_num=0,
    //      		  measure_num=0;
    //  int4		  raw=0L,
    //				    dbsize=0L,
    //				    news=0;
    //	unsigned long   tr_total=0L;
    //	uint4           d=0,
    //					s=0;
    //	char            str[1000]={0};
    void* start_mem;
    mco_runtime_info_t info;

    _SH_();
    mco_get_runtime_info(&info);
    if (info.mco_shm_supported)
    {
        start_mem = (void*)MAP_ADDRESS;
    }
    else
    {
        start_mem = (void*)malloc(DBSIZE);
        if (!start_mem)
        {
            printf("Couldn't allocated memory\n");
            exit(1);
        }
    };

    mco_runtime_start();

    rc = mco_db_open(dbName, compactdb_get_dictionary(), start_mem, DBSIZE, (uint2)PAGESIZE);

    if (rc)
    {
        printf("\nerror creating database");
        if (!info.mco_shm_supported)
        {
            free(start_mem);
        }
        exit(1);
    }
    /* connect to the database, obtain a database handle */
    mco_db_connect(dbName, &db);
    srand((unsigned)time(NULL));

    printf("Writing compact objects\n");
    write_objs(db, Small_code);
    printf("\n\nWriting normal objects\n");
    write_objs(db, Large_code);

    /* disconnect from the database, db is no longer valid */
    mco_db_disconnect(db);
    /* destroys the db instance */
    mco_db_close(dbName);
    mco_runtime_stop();

    if (!info.mco_shm_supported)
    {
        free(start_mem);
    }

    printf("\n\nPress any key to exit");
    getchar();

    PROG_EXIT(0);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲小说欧美激情另类| 日韩美女天天操| 国产精品久久毛片av大全日韩| 亚洲女子a中天字幕| 日本大香伊一区二区三区| 亚洲欧美偷拍另类a∨色屁股| 日韩av电影免费观看高清完整版 | 国产精品蜜臀在线观看| 韩国v欧美v亚洲v日本v| 久久精品夜夜夜夜久久| 国产成人精品亚洲777人妖| 精品av久久707| 蜜桃视频一区二区三区在线观看| 91精品国产综合久久婷婷香蕉| 水野朝阳av一区二区三区| 精品日韩在线一区| 国产精品主播直播| 91精品国产综合久久婷婷香蕉 | 2023国产精品| 国产河南妇女毛片精品久久久| 最新欧美精品一区二区三区| 色美美综合视频| 1000部国产精品成人观看| 欧美日高清视频| 久久精品免费观看| 日韩一级二级三级精品视频| 毛片av中文字幕一区二区| 欧美精品一区二区三区高清aⅴ| 成人免费毛片片v| 亚洲人成网站精品片在线观看| 在线看日本不卡| 国内精品在线播放| ...av二区三区久久精品| 欧美婷婷六月丁香综合色| 国产麻豆一精品一av一免费| 中文字幕在线一区二区三区| 欧美系列在线观看| 秋霞影院一区二区| 国产精品卡一卡二卡三| 日韩欧美亚洲国产精品字幕久久久 | 亚洲电影欧美电影有声小说| 精品少妇一区二区三区日产乱码| 色综合一区二区| 久久激情五月激情| 亚洲视频1区2区| 精品精品国产高清a毛片牛牛 | 91亚洲国产成人精品一区二三| 亚洲国产婷婷综合在线精品| 精品国产1区2区3区| 欧美系列在线观看| 国产91精品久久久久久久网曝门 | 国产伦理精品不卡| 一区二区三区四区国产精品| 国产欧美日韩综合| 在线不卡中文字幕播放| 成人高清在线视频| 精品亚洲免费视频| 亚洲成人动漫在线免费观看| 国产精品另类一区| 精品久久久久久久久久久久包黑料 | 欧美日韩一区二区在线观看 | 91啪亚洲精品| 久久国产麻豆精品| 午夜欧美一区二区三区在线播放| 国产午夜亚洲精品羞羞网站| 欧美成人vr18sexvr| 99热精品一区二区| 国产成人av影院| 亚洲一级不卡视频| 亚洲欧美一区二区在线观看| 久久九九久久九九| 欧美一级在线视频| 欧美日韩在线亚洲一区蜜芽| 91美女片黄在线| 成人激情免费电影网址| 国产精品一区专区| 久久99精品久久久久久国产越南 | 国产精品一区二区三区四区| 狠狠色丁香久久婷婷综| 蜜臀久久99精品久久久画质超高清 | 在线免费观看一区| 欧美制服丝袜第一页| 91亚洲精品一区二区乱码| www.色精品| 成人av影院在线| 国产成人综合精品三级| 成人综合婷婷国产精品久久蜜臀 | 久久蜜桃av一区精品变态类天堂 | 亚洲成人免费视| 午夜视频在线观看一区| 亚洲国产裸拍裸体视频在线观看乱了 | 精品国产露脸精彩对白| 精品国产一区a| 精品第一国产综合精品aⅴ| 日韩一区二区电影在线| 久久女同精品一区二区| 国产区在线观看成人精品| 国产精品视频一二| 亚洲欧美日韩电影| 欧美精品一区二区三区一线天视频| 欧美电视剧在线看免费| 欧美成人精精品一区二区频| 欧美激情一区二区在线| 欧美韩日一区二区三区四区| 欧美日本在线看| 精品国产一区二区国模嫣然| 久久亚洲精华国产精华液| 欧美国产1区2区| 亚洲美女视频一区| 日韩精彩视频在线观看| 国产成人免费视频一区| 91在线观看视频| 欧美老女人在线| 久久久久高清精品| 中文字幕中文乱码欧美一区二区| 午夜精品久久久久| 亚洲日本欧美天堂| 蜜桃91丨九色丨蝌蚪91桃色| 国产福利精品导航| 日本福利一区二区| 欧美一区二区三区视频免费| 久久久久国产免费免费| 亚洲欧美经典视频| 另类小说一区二区三区| 国产一区二区三区国产| 色婷婷精品大视频在线蜜桃视频 | 91精品国产一区二区三区| 欧美日韩国产成人在线91| 欧美xxx久久| 亚洲美女在线国产| 亚洲色图欧美激情| 免费高清在线视频一区·| 成人美女在线观看| 91精品国产综合久久香蕉的特点| 成人黄色av电影| 日韩欧美卡一卡二| 亚洲色图一区二区| 国产成人aaa| 777xxx欧美| 久久午夜色播影院免费高清| 亚洲乱码国产乱码精品精可以看 | 国产电影一区二区三区| 在线免费不卡电影| 久久婷婷国产综合精品青草| 夜夜爽夜夜爽精品视频| 国产精品一区二区三区99| 日韩视频免费观看高清完整版在线观看 | 久久99精品国产麻豆不卡| 91亚洲男人天堂| 5858s免费视频成人| 一区二区三区久久| 国产ts人妖一区二区| 精品国内片67194| 亚洲一区二区三区三| 国内一区二区在线| 精品国产一区二区三区久久影院 | 国产丝袜欧美中文另类| 麻豆国产精品官网| 欧美日韩中文字幕精品| 亚洲麻豆国产自偷在线| 成人午夜免费av| xvideos.蜜桃一区二区| 奇米综合一区二区三区精品视频| 懂色av中文一区二区三区| 日韩一区二区麻豆国产| 五月天激情综合| 色久综合一二码| 亚洲黄色在线视频| av一二三不卡影片| 2020国产精品| 久久99精品一区二区三区三区| 欧美日韩精品欧美日韩精品| 亚洲成av人片一区二区| 93久久精品日日躁夜夜躁欧美| 久久久久久麻豆| 国产精品自拍网站| 久久久久久久久久看片| 大陆成人av片| 久久精品一区二区三区不卡 | 国产欧美日韩一区二区三区在线观看| 麻豆国产精品一区二区三区 | 欧美日韩国产另类不卡| 中国色在线观看另类| 一本一道综合狠狠老| 综合激情成人伊人| 97久久精品人人爽人人爽蜜臀 | 成人黄色电影在线| 久久久国产午夜精品| 国产成人啪午夜精品网站男同| 久久久蜜臀国产一区二区| thepron国产精品| 国产精品久久久久久福利一牛影视 | 国产一区在线精品| 欧美成人精品福利| 不卡av在线免费观看| 欧美国产成人精品| 欧美在线观看一二区| 亚洲一区二区三区爽爽爽爽爽| 91麻豆自制传媒国产之光| 亚洲午夜一区二区|