[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Saving/Loading anonymous function handles in HDF5
From: |
Michael Goffioul |
Subject: |
Re: Saving/Loading anonymous function handles in HDF5 |
Date: |
Tue, 5 Jun 2007 20:53:31 +0200 |
On 6/5/07, David Bateman <address@hidden> wrote:
so unless the interpretation of the file_id variable of the hdf5 C++
iostreams has changed, the oprn file should always be correctly closed..
This happens only with anonymous function handles saved to hdf5 files?
No it happens only with *non*-anonymous function handles.
It doesn't happen for the other hdf5 load/save tests in
octave/tests/test_sparse.m ? If so the issue might be in that the
windows hdf5 libraries don't like if the hdf5 IDs aren't correctly
closed and there is a missing call to something like "H5Gclose (hid)" in
ov-fcn-handle.cc.
Looking at the HDF5 code, although I don't understand all the internals,
it appears that it uses internally reference counting, and that a file is
actually closed when all objects that have been opened, have been correctly
closed. See this comment for H5Fclose extracted from HDF5 code:
This function closes the file specified by FILE_ID by
flushing all data to storage, and terminating access to the
file through FILE_ID. If objects (e.g., datasets, groups,
etc.) are open in the file then the underlying storage is not
closed until those objects are closed; however, all data for
the file and the open objects is flushed.
Michael.