radlib is a C language library developed to abstract details of interprocess communications and common Linux/Unix system facilities so that application developers can concentrate on application solutions. It encourages developers to use a proven paradigm of event-driven, asynchronous design. By abstracting interprocess messaging, events, timers, and any I/O device that can be represented as a file descriptor, radlib simplifies the implementation of multi-purpose processes, as well as multi-process applications. In short, radlib is a sincere attempt to provide real-time OS capability on a non-real-time OS.
| Tags | Database Front-Ends Software Development Libraries |
|---|---|
| Licenses | BSD Revised |
| Operating Systems | POSIX Mac OS X Unix |
| Implementation | C |
| Translations | English |
Recent releases


Changes: This release adds a radsqlitePragma method so pragma commands can be issued to the SQLite database. radUtilsSleep has been modified so that it will wait properly if signals interrupt it.


Changes: Some SQLite names were changed so that they do not collide with the MySQL or PostgreSQL namespaces. Some system call return value checks were added to avoid compiler warnings. A bug when a query fails and results are not expected was fixed.


Changes: SQLite3 access methods were optimized. A fast text search utility (radtextsearch.[ch]) was added. It uses red-black binary trees to store and find text strings.


Changes: This release adds SQLite3 support. The interface is very similar to the MySQL/PostgreSQL interface. It is enabled at configuration via the "--enable-sqlite" option. It may be built along with MySQL or PostgreSQL (it is not mutually exclusive).


Changes: radTimeGetMSSinceEpoch was changed to return an unsigned long long (ULONGLONG) to avoid rollover. The timer subsystem was rewritten to simplify it and address a SIGALRM race condition. The API did not change.