[python] threading 와 ftplib 를 사용해서 코딩 중 인데요! 도와주세요!

조회수 556회
global ses
    ses = ftplib.FTP("site", "id", "pw")
    ses.set_pasv(True)
    ses.cwd("./html/" + name)

    CUR_DIR = os.path.join(ROOT_DIR, name)
    os.mkdir(CUR_DIR)
    os.chdir(CUR_DIR)

    data = []
    ses.dir(data.append)

ftp login 정보는 가려서 올립니다. 위 코드는 다른 python 파일에서 생성된 thread가 도는 코드인데요..

이미지

이런 오류가 납니다.. ses.dir 이라는 코드에 문제가 있는 것 같긴한데, 이 코드가 혼자서 돌 때는 이런 문제가 전혀 없었거든요. 그런데 이제 다른 python 파일에서 스레드로 실행하면서 이런 문제가 발생했어요. 제 추측에는 한 파이썬 파일을 가지고 여러 스레드로 작동시키고 이 여러 스레드가 동일한 ftp에 접속해서 발생하는 것인가? 하고 추측만 하고 있거든요... 사실 왜 이러는지 모르겠어요.. 그리고 스레드 마다 에러도 다 다르고 매번 발생하는 에러도 다 달라요. 이미지

어쩔 때는 이런 오류도 나요... 이미지

위 오류는 MASK-RCNN 모델 쓰는데 텐서에서 오류가 나네요..

정리하자면,

  1. MASK-RCNN 모델을 사용하는 프로그램은 작동이 매우 잘 되었다.
  2. 이 때 이미지 파일을 ftp에서 얻어오는 방식이었다.
  3. 다른 python 파일에서 이 프로그램을 여러개로 작동시키기 위해 스레드를 도입했고 이 프로그램을 돌리기 위한 모델을 인자로 넘겨주었다. (매번 스레드에서 모델을 로딩하다 보니 시간이 오래걸려서 아예 메인 파일에서 모델을 로드하고 그 정보를 인자로 넘겨주었어요)
  4. 이런저런 오류들이 발생한다...
  5. 추측하건데, 기능적인 부분은 오류가 없고,, 스레드나,, ftp나,, 모델을 인자로 넘긴다거나 하는데서 오류가 난 것 같다. 하지만 매번 발생하는 오류도 다르고 원인도 검색해봐도 잘 모르겠다.

입니다... 좀 난잡하죠?? 그래도 해결해주시려면 많은 정보가 필요할 것 같아서 이렇게 장문을 씁니다.. 죄송합니다 ㅠㅠ 도와주세요!

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)