diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2005-11-16 01:01:37 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2005-11-16 01:01:37 (GMT) |
commit | 671187fd2b53c916f444e849a2fd57bac06552f8 (patch) | |
tree | a1a723b81dda3c967a597a9d7477806e4fcfa706 /src/H5private.h | |
parent | e70783203ab603627147c565d0fe08ddbe103981 (diff) | |
download | hdf5-671187fd2b53c916f444e849a2fd57bac06552f8.zip hdf5-671187fd2b53c916f444e849a2fd57bac06552f8.tar.gz hdf5-671187fd2b53c916f444e849a2fd57bac06552f8.tar.bz2 |
[svn-r11733] Purpose:
Code cleanup
Description:
Added some comments about the thread-specific memory for the error and
function stacks.
Changed H5close() to not use the function stack (since it causes it to
be re-enabled after shutting it down)
Changed thread-safe semaphore code to not use dynamicly allocated memory.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Linux 2.4
Too minor to require h5committest
Diffstat (limited to 'src/H5private.h')
-rw-r--r-- | src/H5private.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/H5private.h b/src/H5private.h index 28ec832..21e2d43 100644 --- a/src/H5private.h +++ b/src/H5private.h @@ -1238,7 +1238,7 @@ static herr_t H5_INTERFACE_INIT_FUNC(void); /* * Use this macro for API functions that shouldn't perform _any_ initialization * of the library or an interface, just perform tracing, etc. Examples - * are: H5close, H5check_version, etc. + * are: H5check_version, etc. * */ #define FUNC_ENTER_API_NOINIT(func_name) {{ \ @@ -1249,6 +1249,20 @@ static herr_t H5_INTERFACE_INIT_FUNC(void); BEGIN_MPE_LOG(func_name); \ { +/* + * Use this macro for API functions that shouldn't perform _any_ initialization + * of the library or an interface or push themselves on the function + * stack, just perform tracing, etc. Examples + * are: H5close, etc. + * + */ +#define FUNC_ENTER_API_NOINIT_NOFS(func_name) {{ \ + FUNC_ENTER_API_VARS(func_name) \ + FUNC_ENTER_COMMON(func_name,H5_IS_API(#func_name)); \ + FUNC_ENTER_API_THREADSAFE; \ + BEGIN_MPE_LOG(func_name); \ + { + /* Use this macro for all "normal" non-API functions */ #define FUNC_ENTER_NOAPI(func_name,err) { \ FUNC_ENTER_COMMON(func_name,!H5_IS_API(#func_name)); \ @@ -1353,6 +1367,14 @@ static herr_t H5_INTERFACE_INIT_FUNC(void); } /*end scope from end of FUNC_ENTER*/ \ }} /*end scope from beginning of FUNC_ENTER*/ +#define FUNC_LEAVE_API_NOFS(ret_value) \ + FINISH_MPE_LOG; \ + H5TRACE_RETURN(ret_value); \ + FUNC_LEAVE_API_THREADSAFE \ + return (ret_value); \ + } /*end scope from end of FUNC_ENTER*/ \ +}} /*end scope from beginning of FUNC_ENTER*/ + #define FUNC_LEAVE_NOAPI(ret_value) \ H5_POP_FUNC; \ return (ret_value); \ |