close - Maple Help

fclose

closes a buffered file

close

closes an unbuffered file

 Calling Sequence fclose(file ...) close(file ...)

Parameters

 file - one or more names or file descriptors of open files to be closed

Description

 • The functions close and fclose are equivalent, and can be used interchangeably.
 • Closes the specified file, which is assumed to have been opened either implicitly or by fopen or open.
 • fclose and close do not return anything.
 • Closing a file ensures that all data is actually written to disk.
 • When exiting Maple by the quit, done, or stop command, all open files are automatically closed.
 • Closing a file which exists but is not open is harmless.
 • The number of open files allowed is system specific.
 • When writing many files, you must fclose() each of them to ensure that you do not run out of file handles.

 • The fclose and close commands are thread safe as of Maple 15.  Care must be taken when closing files that are used by multiple threads in parallel.
 • Parallel calls to file i/o commands on the same file descriptor will be serialized in an arbitrary order.  If you need the commands to execute in a particular order you must use Maple's synchronization tools to enforce this.  See Threads:-Mutex.
 > $\mathrm{fd}≔\mathrm{fopen}\left(\mathrm{testFile},\mathrm{WRITE},\mathrm{BINARY}\right)$
 ${\mathrm{fd}}{≔}{0}$ (1)
 > $\mathrm{fprintf}\left(\mathrm{fd},\mathrm{This is a test }\right)$
 ${15}$ (2)
 > $\mathrm{fclose}\left(\mathrm{fd}\right)$