5 개의 이메일을 동시에 전송하려고합니다. 함수 scheduleEmails은 5 개의 전자 메일 주소 목록을 입력으로 사용합니다. 내 코드는 다음과 같습니다 :특정 주파수에서 병렬로 이메일 보내기
import multiprocessing
import smtplib
def sendMail(email):
#sends email using smtplib
# returns True in case of success, False in case of failure
def scheduleEmails(emailLst):
"""
emailLst is a list of list of 5 emails
emailLst = [[emailAddr1,emailAddr2,emailAddr3...emailAddr5],
[emailAddr6...emailAddr10],
[emailAddr11... emailAddr[15],...]
"""
FREQUENCY = 5 # no. of emails to be send per second
for i in range(len(emailLst)):
p = multiprocessing.Pool(FREQUENCY)
emails = emailLst[i]
results = p.map(sendEmail,emails)
scheduleEmails(someEmailLst)
코드는 정상적으로 작동하지만 시간이 지나면 멈 춥니 다. 실수를 지적하거나이를 달성하기위한 더 좋은 방법을 제안 할 수 있습니까?
감사합니다 1 월 스레딩이 더 나은 해결책입니다. – chochim