자바로 서버를 만들었는데
패킷두개를 연속으로보낼때 가끔하나가씹히네요
근대 씹히는게 랜덤인게 서버에서 두개받고 보낼때 하나가씹혀져서보내지거나
서버에서 두개받을때 하나가씹혀서오거나 소스에 잘못된게있나요??
tcp는 무손실인데 왜이런지모르겟네요
아래는 간략소스인데 서버 클라모두 아래소스를사용함 send로 패킷보내고 line=br.readLine(); 이걸로 값받습니다
지금까지 게속테스트해본결과 line=br.readLine();여기서 못받는문제같은데 (패킷이씹힌상태로 다른패킷보내면잘받음)
어떻게해결해야할까요 클라는 안드로이드고 서버는 윈도우입니다
class Data extends Thread
{
Socket socket;
static public void send(String str, Socket sock)
{
try
{
OutputStream out = sock.getOutputStream();
PrintWriter pw = new PrintWriter(new OutputStreamWriter(out));
pw.println(str);
System.out.println("보낸내용mr:"+str);
pw.flush();
}catch(IOException E){
System.out.println("보내기에러"+E.getMessage());
}
}
public void run()
{
try
{
while(true)
{
String line;
InputStream in = socket.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(in));
line=br.readLine(); //값을 받음
System.out.println("받은내용data"+line);
//받을값을가지고 처리한후
// send메소드로 패킷 을 다시 클라로보냄
}catch (IOException e1)
{
e1.printStackTrace();
}
}
}
}