// When a connection dies, before it is deallocated, the event {name = NSConnectionDidDieNotification; sender = connection} is posted to let external clients back off the connection
/* A connection object is a bookkeeper for objects vended or received over a particular port resource. It may not be shared by multiple threads. */
@interface NSConnection: NSObject {
@private
unsigned isValid:1;
unsigned isDead:1;
unsigned isQueueing:1;
unsigned authGen:1;
unsigned authCheck:1;
unsigned encryptFlag:1;
unsigned decryptFlag:1;
unsigned doRequest:1;
unsigned refCount:24;
id delegate;
id receivePort; // port that we decode from
id sendPort; // port that we encode to
void *localProxies;
void *remoteProxies;
id coderClass;
NSTimeInterval requestLimit;
NSTimeInterval replyLimit;
id requestModes; // modes in which we honor requests
id rootObject; // the "default" object for this connection
id registerName;
id statistics;
void *classInfoExported;
void *classInfoImported;
NSMutableData *releasedProxies;
void *reserved;
}
- (NSDictionary *)statistics; // for this connection