我正在使用AsyncSocket并监听一个特定的端口。我正确地获得了一个带有新套接字的didAcceptNewSocket委托回调。当我为新的套接字调用local时,它的端口号与我的侦听套接字的端口号相同。我希望有一个不同的端口。
- (void)createListenSocket
{
NSError *error;
listenSocket = [[AsyncSocket alloc] initWithDelegate:self];
[listenSocket acceptOnPort:MY_PORT_NUMBER error:&error];
}
和
- (void)onSocket:(AsyncSocket *)sock didAcceptNewSocket:(AsyncSocket *)newSocket
{
NSLog(@"new connected socket: local port: %d, connected port: %d",
[newSocket localPort], [newSocket connectedPort]);
这将打印本地端口的MY_PORT_NUMBER值。
为什么?