Disconnecting from the Network

Once you have finished opening the Net Library, you can begin connecting, sending, and receiving on the network. I cover how to do that in great detail in the next chapters. Right now, I discuss what to do when you’re done; i.e., close down the protocol stack.

Closing the Net Library

Disconnecting from the network is easy—simply call NetLibClose:

Err NetLibClose (UInt netLibRefNum, Boolean immediate);

The immediate parameter indicates whether you want the Net Library to close immediately. This controls how the library is closed down. If this parameter is true, the protocol stack closes down as soon as it receives the request from the mailbox queue. If this parameter is set to false, the protocol stack starts a countdown to allow other applications, or even your same application, the opportunity to call NetLibOpen. If this occurs before the countdown reaches 0, the close is aborted and the protocol stack is not unloaded. This saves the user from the pain of waiting while connections are made and the protocol stack loads.

The Dilemma—When to Disconnect?

On the one hand, the Zen of Palm urges you to minimize resource consumption, so you’ll want to shut down the protocol stack as soon as possible to free all those resources it uses. On the other hand, the Tao of Networking urges you to provide the most responsive experience to your users, so you’ll want to avoid frequent reconnecting to the network, with all the dialing and protocol negotiating that ...

Get Palm OS Network Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.