Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
iostatus - indicate status of all open files
Description
The iostatus function takes no arguments, and returns a list of at least three elements.
The number of files open by the I/O library
The number of currently active nested "read" commands
The upper bound on iostatus()[1] + iostatus()[2]
For each open file, an additional element appears in the list. Each element is itself a list, whose elements are:
The file descriptor (from fopen, open, pipe, or popen)
The name of the file, pipe, or process
The file type (STREAM, RAW, PIPE, PROCESS, or DIRECT)
FP=address for a STREAM or PROCESS, FD=num otherwise
The file mode (READ or WRITE)
The file type (TEXT or BINARY)
Element 2, the name, contains the actual file name for a STREAM or RAW file, "pipe:n" where "n" is the actual file descriptor for a PIPE file, the process name (ie. the command) for a PROCESS file, and "default" or "terminal" for a DIRECT file.
Element 4 gives the internal representation of the file, either a file pointer (FILE *) or file descriptor (int). This is useful when opening a pipe, because whatever you connect the other end of the pipe to needs to know the actual file descriptor, not the Maple file descriptor.
Thread Safety
The iostatus command is thread safe as of Maple 15.
iostatus returns the status of the i/o system at the moment at which iostatus is executed. However events occurring in parallel threads can effect the status as soon as iostatus has returned.
For more information on thread safety, see index/threadsafe.
Examples
See Also
feof, file_types, filepos
Download Help Document