Every Ice-based application needs to initialize the Ice run time, and this initialization returns an
Communicator is a local Swift object that represents an instance of the Ice run time. Most Ice-based applications create and use a single
Communicator object, although it is possible and occasionally desirable to have multiple
Communicator objects in the same application.
You initialize the Ice run time by calling
Ice.initialize, for example:
initialize scans the argument array for any command-line options that are relevant to the Ice run time. If anything goes wrong during initialization,
initialize throws an exception.
initialize does not modify the argument array. You can use another overload of
initialize that removes all Ice-related options from the argument array.
Once you no longer need a
Communicator, you must call
destroy on this
destroy method is responsible for finalizing the instance of the Ice run time embodied by this Communicator. In particular, in an Ice server,
destroy waits for operation implementations that are still executing to complete. In addition,
destroy ensures that any outstanding threads are joined with and reclaims a number of operating system resources, such as file descriptors and memory. Never allow your application to terminate without calling
The general shape of a simple command-line Swift application becomes: