我想实现一个多线程的客户端ftp类,来进行多个文件的上传。
问一下,是不是每个线程都必须单独和服务器建立连接?多个线程之间能否共享连接?
如果可以,请问如何实现?谢谢

解决方案 »

  1.   

    可以看看 core java 的 网络编程 部分
      

  2.   

    你后面说得好像和你的问题不一致了,"多线程的客户端ftp类", 是你需要多线程的如果你的意思是多个线程使用1个ftp,那么如果够用(视应用而定), 同步一下也可以啊
      

  3.   

    我的意思是考虑怎样才能效率高
    我有很多文件,我是想让每个线程负责一个文件的上传,
    或者能不能做一个ftp的连接池来实现?
      

  4.   

    个人认为:
    (1) 就传文件而言, 多个ftp线程当然效率高, 但缺点就是你说的"是不是太麻烦"
    (2) 多个应用线程, 1个ftp线程, 只需要同步, 优点:简单, 缺点:文件多而且大时效率低(需要等)
    (3) 你说的ftp池,前2者的折中. 优点不用说,缺点:需要额外管理池,另外需要考虑ftpserver的压力,超时(没数据后会自动断开)
    你视实际情况考虑吧