任何人都请帮助我理解这段代码。这是从我从 googlecode 中获取的 android 的 IPCamera 中获取的。我试图弄清楚的代码是:
public NanoHTTPD( int port, File wwwroot ) throws IOException
{
myTcpPort = port;
this.myRootDir = wwwroot;
myServerSocket = new ServerSocket( myTcpPort );
myThread = new Thread( new Runnable()
{
public void run()
{
try
{
while( true )
new HTTPSession( myServerSocket.accept());
}
catch ( IOException ioe )
{}
}
});
myThread.setDaemon( true );
myThread.start();
}
private class HTTPSession implements Runnable
{
public HTTPSession( Socket s )
{
mySocket = s;
Thread t = new Thread( this );
t.setDaemon( true );
t.start();
}
public void run()
{
try
{
InputStream is = mySocket.getInputStream();
if ( is == null) return;
我想知道的事情。请告诉我我的理解是否有误:
1-myServerSocket.accept()
此代码将返回什么?布尔值是真还是假?
2-InputStream is = mySocket.getInputStream();
输入流是获取字节流。但是程序在 mySocket 上读取了什么。据我了解,它读取端口号。获取字节与 mySocket 有什么关系?
如果我的理解完全错误,我真的很抱歉,因为套接字不是我的知识。请帮助我更多地了解这一点。