2013-08-05 6 views
6

私はMySQL 5.5のソースコードを読んでいて、プロジェクト全体の多くのソースファイルに現れているマクロHAVE_PSI_INTERFACEで混乱しています。例えばHAVE_PSI_INTERFACEマクロは何のために使用されていますか?

は、ソースファイルの保存/例/ ha_example.ccでは、次のコードがあります:

#ifdef HAVE_PSI_INTERFACE 
static PSI_mutex_key ex_key_mutex_example, ex_key_mutex_EXAMPLE_SHARE_mutex; 

static PSI_mutex_info all_example_mutexes[]= 
{ 
    { &ex_key_mutex_example, "example", PSI_FLAG_GLOBAL}, 
    { &ex_key_mutex_EXAMPLE_SHARE_mutex, "EXAMPLE_SHARE::mutex", 0} 
}; 

static void init_example_psi_keys() 
{ 
    const char* category= "example"; 
    int count; 

    if (PSI_server == NULL) 
    return; 

    count= array_elements(all_example_mutexes); 
    PSI_server->register_mutex(category, all_example_mutexes, count); 
} 
#endif 

のでHAVE_PSI_INTERFACEが何を意味するのでしょうか?具体的には、PSIは何を表していますか?そして、HAVE_PSI_INTERFACEマクロは何のために使われていますか?

ありがとうございました。

答えて

3

PSIの略語:パフォーマンススキーマ計測インタフェース。

あなたは

+0

ありがとう(コメント付き)psi.hファイルhereを見つけることができます。私は最近Instrumentationに精通しています。 – lulyon

関連する問題