´ñ±Û : 4 °³
Çѱ¹ µ¨ÆÄÀÌ µ¿È£È¸ µ¨¸¶´ç
·ùÁ¾ÅÃ
(À¯Á¾ÅÃ)
 
Àεð´Â ºí·ÎÅ· ¼ÒÄÏÀÎÁö¶ó, ÆÐŶÀ» Àд °úÁ¤¿¡¼­ ÇÁ·Î¼¼½º°¡ ¸ØÃç¼­ ±â´Ù¸³´Ï´Ù.
Á¶°ÇÀÌ ¸ÂÁö ¾ÊÀ¸¸é ÇÁ·Î±×·¥ÀÌ ´ç¿¬È÷ ¸ØÃç ¼·´Ï´Ù.

ÇعýÀº µÎ °¡Áö°¡ ÀÖ½À´Ï´Ù.

1. ½º·¹µå¸¦ »ç¿ëÇÕ´Ï´Ù.

2.IdTCPClient1.IOHandler.CheckForDataOnSource(5); ¸¦ ¸ÕÀú ÇϽðí 
¹öÆÛ¿¡ µ¥ÀÌÅÍ°¡ Àִ ¸¸Å­¸¸ ÀÐÀ¸¸é ºí·ÎÅ·µÇÁö ¾Ê½À´Ï´Ù.

// ¹öÆÛ°¡ ºñ¾îÀÖÀ¸¸é Exit
try
  IdTCPClient1.IOHandler.CheckForDataOnSource(5);
except
  Exit;
end;
      
iReadSize := IdTCPClient1.IOHandler.InputBuffer.Size;
if iReadSize > 0 then
  IdTCPClient1.IOHandler.ReadBytes(Buffer, iReadSize, false);

ó·³ ÇöÀç±îÁö ¹öÆÛ¿¡ µµÂøÇÑ ¸¸Å­¸¸ ÀоɴϴÙ. 
2017-03-24 ¿ÀÀü 10:19:14
±×¸²ÀÚ
(±è¿µ»ó)
 
°¨»çÇÕ´Ï´Ù.
Àß Àоî¿É´Ï´Ù. 
·ùÁ¾ÅôԠµ¿¿µ»ó °­Áµµ ¸¹ÀÌ Âü°í°¡ µÇ°í ÀÖ½À´Ï´Ù. 
ÁÁÀº ÇϷ砵Ǽ¼¿ä.~~!!


¾²·¹µå ºÎºÐ ¸¸µé¾î ºÃ½À´Ï´Ù. 
Çѱ۵µ ¾È±úÁö°í Àß ÀоɴϴÙ.

procedure TReadingThread.Execute;
var
   iReadSize: integer;
   Buffer: TIdBytes;
   strAnsi: AnsiString;
begin
   while not Terminated do begin
      try
        FClient.IOHandler.CheckForDataOnSource(5);
      except
        Exit;
      end;

      iReadSize := FClient.IOHandler.InputBuffer.Size;
      if iReadSize > 0 then begin
         FClient.IOHandler.ReadBytes(Buffer, iReadSize, False);
         SetString(strAnsi, PAnsiChar(@Buffer[0]), iReadSize);
         FData := string(strAnsi);
         if (FData <> '') and Assigned(FOnData) then Synchronize(DataReceived);
      end;
   end;
end; 
2017-03-24 ¿ÀÈÄ 1:12:45
±è¸»µ¿
(±è¼º¿ø)
 
ReadLnÀº »ó´ë¹æÀÌ ³¡¿¡ LF(#10)À» Áà¾ß ÀнÀ´Ï´Ù.
¸Å´º¿¤¿¡ ³ª¿ÍÀִ »ç¿ë¹ýÀÌÁÒ.

¸¹Àº °æ¿ì Åë½Å¿¡ ¹®ÀÚ¿­À» ±×´ë·Î º¸³»Áø ¾Ê°í ´ëºÎºÐ StreamÀ¸·Î ¹­¾î º¸³À´Ï´Ù.
½ºÆ®¸²¿¡ ¿øÇϴ ³»¿ë(¹®ÀÚ¿­, ·¹ÄÚµå, À̹ÌÁöµîµîµî) À» ³Ö°í ¾ÐÃàÇÏ°í º¯Á¶Çؼ­ º¸³À´Ï´Ù. »ó´ë¹æÀº ±×³É ½ºÆ®¸²À» ¹ÞÀ¸¸é µË´Ï´Ù.
ÀεðÀÇ °æ¿ì Âü ½±°Ô º¸³»°í ¹Þ°ÚÁÒ?
±×¸®°í º¹È£È­ÇÏ°í ¾ÐÃà Ç®°í µîµî...

±×¸®°í ÀÛ¾÷Çϸ頵˴ϴÙ.
 
2017-03-24 ¿ÀÈÄ 4:16:43
·ùÁ¾ÅÃ
(À¯Á¾ÅÃ)
 
// ¾Æ·¡ À̽´°¡ ¹Ýµå½Ã ¹®Á¦¶ó°í ÇÒ ¼ö´Â ¾øÁö¸¸,
// Synchronize¸¦ »ç¿ëÇϸ頽º·¹µå¸¦ »ç¿ëÇϴ Àǹ̰¡ ¹Ý°¨µË´Ï´Ù.
// À̺¥Æ®°¡ ¸ÞÀΠ½º·¹µå¿¡¼­ ¹ß»ýÇϵµ·Ï Çϱâ À§Çؼ­ 
// ¸Þ½ÃÁö Å¥¿¡ µ¥ÀÌÅ͸¦ ½×°í PostMessage·Î 
// ¸ÞÀΠ½º·¹µå¿¡¼­ À̺¥Æ®¸¦ ¹ß»ý½ÃÅ°´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù.
if (FData <> '') and Assigned(FOnData) then Synchronize(DataReceived); 
2017-03-24 ¿ÀÈÄ 6:50:21