[TCP 파일전송] [서버의 접속클라이언트 스레드풀]




server 코드
 
//inThread
public
void startServer() { server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); serverIp = JSmsService.util.NetUtil.GetIP4(); server.Bind(new IPEndPoint(serverIp, serverPort)); server.Listen(1); Console.WriteLine("serverStart " + serverIp + " " + serverPort); while (true) { Console.WriteLine("wait"); IAsyncResult ar = server.BeginAccept(new AsyncCallback(acceptClinet), server); ar.AsyncWaitHandle.WaitOne(); } } private void acceptClinet(IAsyncResult ar) { Socket client = server.EndAccept(ar); int contentByteLength = 0; FileStream fs = new FileStream(@"c:\temp.zip", FileMode.OpenOrCreate, FileAccess.Write); while (contentByteLength < Totalbytelength) { if (client.Available > 0) { byte[] receive = new byte[client.Available]; client.Receive(receive); fs.Write(receive , 0 , receive.Length); contentByteLength += receive.Length; } } fs.Close(); Console.WriteLine("end! " + contentByteLength); }


client 코드
 
FileStream fs = new FileStream(zipFilePath, FileMode.Open, FileAccess.Read);


            
            Socket client = new Socket(AddressFamily.InterNetwork , SocketType.Stream , ProtocolType.Tcp);
            client.Connect(new IPEndPoint(IPAddress.Parse("[상대방측아이피]"), 8888));
            byte[] buff = new byte[client.SendBufferSize]; //client.SendBufferSize 중요! 
            int length = 0;
            while (length < fs.Length) 
            {
                int read = fs.Read(buff, 0, buff.Length);
                length += read;

                Console.WriteLine(read + " " + length);
                client.Send(buff);
            }
            client.Close();
            Console.WriteLine("end");

지금까지 소켓 바이트배열 전송을 As3 -> .NET , 혹은 한 컴퓨터의 로컬 에서만 사용하였는데
이와 같은 방법으로 원격지에 바이트배열을 송수신 하게 되면 정확한 전송을 보장할수 없다.

중요! 가 중요하다.

또한 서버측의 AsyncCallback 를 이용한 스레드풀 구현도 참고할만 했다 

Yamecoder 야매코더_
C# 2012. 2. 12. 16:20

댓글을 달아 주세요

  1. 이전 댓글 더보기
  2. BlogIcon burberry scarf women 2014.09.22 12:32  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  3. BlogIcon moncler femme 2014.09.22 23:58  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  4. BlogIcon spaccio woolrich 2014.09.24 10:39  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  5. BlogIcon 匿名 2014.09.28 14:38  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  6. BlogIcon chanel bags online 2014.10.13 19:06  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  7. BlogIcon meizitang botanical slimming 2014.10.14 16:12  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  8. BlogIcon woolrich donna 2014.10.14 16:13  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  9. BlogIcon meizitang soft gel 2014.10.14 16:13  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  10. BlogIcon meizitang 2014.10.14 16:14  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  11. BlogIcon cheap oakley sunglasses 2014.10.17 04:22  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  12. BlogIcon mont blanc starwalker 2014.10.22 16:27  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  13. BlogIcon nobis parka 2014.10.22 16:28  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  14. 匿名 2014.11.10 17:32  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  15. BlogIcon 眼镜批发市场 2014.11.12 00:51  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  16. BlogIcon billige ralph lauren 2014.11.23 08:08  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  17. 匿名 2014.12.03 05:44  수정/삭제  댓글쓰기

    이용약관위배로 관리자 삭제된 댓글입니다.

  18. 匿名 2015.02.11 14:03  수정/삭제  댓글쓰기

    메를剑侠情缘服务端密传服务端街头篮球服务端A3私服务端破天一剑服务端

    魔域服务端魔兽世界服务端天龙八部服务端RF服务端传奇归来私服务端

    风云雄霸天下服务端天之炼狱一条龙大话西游服务端精灵复兴私服务端


    传奇世界私服开服一条龙服务-

    魔兽私服开区一条龙服务-


    IDC服务器以及空间租用-

    魔域开区sf一条龙开区服务-

    传奇广告代理-


    客服咨询QQ(企鹅扣扣)1292124634

    Email:1292124634@qq.com

    商业版本免费开放下载




    前沿科技1.80怀旧复古赤月终极烟花教主淘宝秒杀商城升级版



    前沿科技1.76雄霸特色大极品+50元素倚天辟地狂风连击传奇



    前沿科技3D真彩无英雄中变靓装元素傲天朱雀神龙毒血斩



    前沿科技至尊中变1.89无英雄元素立法之殿版

    그에

  19. BlogIcon Burberry sac 2015.03.31 00:03  수정/삭제  댓글쓰기

    지을URL aIci,chaussure burberry homme pas cher相关的主题文章:기있

  20. 匿名 2015.04.05 10:19  수정/삭제  댓글쓰기

    는습Black and military green. Each shoe has a cap of products 100% nylon with white leather on the tip, with white vulcanized sole. The following is a list detailing details log on to Nike Air Max 90.



    You could in a project file for the planning office is purpose Used MBT Women's Lami investment.Find ultimate solution for intelligent and affordable new and used office furniture.


    With the i일간

  21. 匿名 2015.04.06 01:07  수정/삭제  댓글쓰기

    선단They are comfortable and keep your feet feel different! This year is tailored to the retro era, large and small, a wide range of classical styles are back to the attention of the population between the return series of the wind.



    Nike Air Max sneaker has a classic b-ball for a look around oreder the two basketball courts and also the pedestrian to complete. Nike Air Max 95, a draft model Spo메부

Powerd by Tistory, designed by criuce
rss