PostgreSQL解読室:
MemoryContextResetChildren()/postgresql-8.1.4
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
このページを編集する際は、[[編集に関する方針]]に従ってく...
*概要 [#g04df4d7]
-対象:8.1.4
-言語:C
-宣言:[[postgresql-8.1.4/src/include/utils/memutils.h]](...
-定義:[[postgresql-8.1.4/src/backend/utils/mmgr/mcxt.c]]
- [[MemoryContextReset()/postgresql-8.1.4]]を再帰的に呼び...
-- ポインタcontext->firstchildで示されるMemoryContextイン...
-- 順番に->nextchildで示されるMemoryContextインスタンスに...
-- ->nextchild==NULLとなったら終了。
- ただし、USE_ASSERT_CHECKINGを指定したバイナリの場合、as...
*引数 [#y5b67cc3]
MemoryContext context
-[[MemoryContext/postgresql-8.1.4]] -- 下記メンバを持つ構...
--NodeTag列挙型の変数type
--下記メンバを持つ構造体型MemoryContextMethodsへのポイン...
---void*型の関数ポインタalloc
---void型の関数ポインタfree_p
---void*型の関数ポインタrealloc
---void型の関数ポインタinit
---void型の関数ポインタreset
---void型の関数ポインタdelete
---Size型の関数ポインタget_chunk_space
---bool型の関数ポインタis_empty
---void型の関数ポインタstats
---void型の関数ポインタcheck
--MemoryContextDataへのポインタparent(再帰的使用)
--MemoryContextDataへのポインタfirstchild(再帰的使用)
--MemoryContextDataへのポインタnextchild(再帰的使用)
--char型へのポインタname
*実装 [#l1c2d270]
void
MemoryContextResetChildren(MemoryContext context)
{
MemoryContext child;
-[[MemoryContext/postgresql-8.1.4]] -- 下記メンバを持つ構...
--NodeTag列挙型の変数type
--下記メンバを持つ構造体型MemoryContextMethodsへのポイン...
---void*型の関数ポインタalloc
---void型の関数ポインタfree_p
---void*型の関数ポインタrealloc
---void型の関数ポインタinit
---void型の関数ポインタreset
---void型の関数ポインタdelete
---Size型の関数ポインタget_chunk_space
---bool型の関数ポインタis_empty
---void型の関数ポインタstats
---void型の関数ポインタcheck
--MemoryContextDataへのポインタparent(再帰的使用)
--MemoryContextDataへのポインタfirstchild(再帰的使用)
--MemoryContextDataへのポインタnextchild(再帰的使用)
--char型へのポインタname
AssertArg(MemoryContextIsValid(context));
-[[AssertArg()/postgresql-8.1.4]]
-- USE_ASSERT_CHECKINGを指定しないバイナリの場合、なにも...
-- USE_ASSERT_CHECKINGを指定したバイナリの場合、assert_en...
-[[MemoryContextIsValid()/postgresql-8.1.4]] -- ポインタc...
for (child = context->firstchild; child != NULL; child =...
MemoryContextReset(child);
-[[MemoryContextReset()/postgresql-8.1.4]] -- 呼び出し元...
}
*呼出元 [#h7cfedd0]
-[[MemoryContextReset()/postgresql-8.1.4]]
*備考 [#c8d73abe]
-[[再帰呼び出し②/解読日記]]
* MemoryContextResetChildren
* Release all space allocated within a context's descen...
* but don't delete the contexts themselves. The named ...
* itself is not touched.
*履歴 [#l75d6b06]
-作者:[[testnoda/ページ作者]]
-日付:2007/3/11
|更新日|更新者|更新内容|
||||
*コメント [#m21cf12c]
#comment
終了行:
このページを編集する際は、[[編集に関する方針]]に従ってく...
*概要 [#g04df4d7]
-対象:8.1.4
-言語:C
-宣言:[[postgresql-8.1.4/src/include/utils/memutils.h]](...
-定義:[[postgresql-8.1.4/src/backend/utils/mmgr/mcxt.c]]
- [[MemoryContextReset()/postgresql-8.1.4]]を再帰的に呼び...
-- ポインタcontext->firstchildで示されるMemoryContextイン...
-- 順番に->nextchildで示されるMemoryContextインスタンスに...
-- ->nextchild==NULLとなったら終了。
- ただし、USE_ASSERT_CHECKINGを指定したバイナリの場合、as...
*引数 [#y5b67cc3]
MemoryContext context
-[[MemoryContext/postgresql-8.1.4]] -- 下記メンバを持つ構...
--NodeTag列挙型の変数type
--下記メンバを持つ構造体型MemoryContextMethodsへのポイン...
---void*型の関数ポインタalloc
---void型の関数ポインタfree_p
---void*型の関数ポインタrealloc
---void型の関数ポインタinit
---void型の関数ポインタreset
---void型の関数ポインタdelete
---Size型の関数ポインタget_chunk_space
---bool型の関数ポインタis_empty
---void型の関数ポインタstats
---void型の関数ポインタcheck
--MemoryContextDataへのポインタparent(再帰的使用)
--MemoryContextDataへのポインタfirstchild(再帰的使用)
--MemoryContextDataへのポインタnextchild(再帰的使用)
--char型へのポインタname
*実装 [#l1c2d270]
void
MemoryContextResetChildren(MemoryContext context)
{
MemoryContext child;
-[[MemoryContext/postgresql-8.1.4]] -- 下記メンバを持つ構...
--NodeTag列挙型の変数type
--下記メンバを持つ構造体型MemoryContextMethodsへのポイン...
---void*型の関数ポインタalloc
---void型の関数ポインタfree_p
---void*型の関数ポインタrealloc
---void型の関数ポインタinit
---void型の関数ポインタreset
---void型の関数ポインタdelete
---Size型の関数ポインタget_chunk_space
---bool型の関数ポインタis_empty
---void型の関数ポインタstats
---void型の関数ポインタcheck
--MemoryContextDataへのポインタparent(再帰的使用)
--MemoryContextDataへのポインタfirstchild(再帰的使用)
--MemoryContextDataへのポインタnextchild(再帰的使用)
--char型へのポインタname
AssertArg(MemoryContextIsValid(context));
-[[AssertArg()/postgresql-8.1.4]]
-- USE_ASSERT_CHECKINGを指定しないバイナリの場合、なにも...
-- USE_ASSERT_CHECKINGを指定したバイナリの場合、assert_en...
-[[MemoryContextIsValid()/postgresql-8.1.4]] -- ポインタc...
for (child = context->firstchild; child != NULL; child =...
MemoryContextReset(child);
-[[MemoryContextReset()/postgresql-8.1.4]] -- 呼び出し元...
}
*呼出元 [#h7cfedd0]
-[[MemoryContextReset()/postgresql-8.1.4]]
*備考 [#c8d73abe]
-[[再帰呼び出し②/解読日記]]
* MemoryContextResetChildren
* Release all space allocated within a context's descen...
* but don't delete the contexts themselves. The named ...
* itself is not touched.
*履歴 [#l75d6b06]
-作者:[[testnoda/ページ作者]]
-日付:2007/3/11
|更新日|更新者|更新内容|
||||
*コメント [#m21cf12c]
#comment
ページ名: