인프런 커뮤니티 질문&답변

vpdtlrdl님의 프로필 이미지
vpdtlrdl

작성한 질문수

우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)

병렬성 1 - Futures(4-1)

map 함수의 리턴값에 관한 질문입니다

작성

·

222

0

concureent.futures의 map 함수의 출력값과 관련해서 궁금한 내용인데요

from concurrent import futures
import threading
import time

def task(n):
    print('{} : sleeping {}'.format(threading.current_thread().namen))
    time.sleep(n / 10)
    print('{} : done with {}'.format(threading.current_thread().namen))
    return n / 10

ex = futures.ThreadPoolExecutor(max_workers=2)
print('main : starting')
results = ex.map(taskrange(50, -1))
print('main : unprocessed results {}'.format(results))
print('main : waiting for real results')
real_results = list(results)
print('main : results : {}'.format(real_results))

다음의 코드를 실행하니 

print('main : unprocessed results {}'.format(results))

이 부분의 출력값이

ThreadPoolExecutor-0_1 : sleeping 4main : unprocessed results <generator object Executor.map.<locals>.result_iterator at 0x000002899230B7B0>

이렇게 나오는 것을 확인할 수 있었습니다..

generator와 iterator가 모두 나오는걸 볼 수 있었는데요

map 함수의 출력값은 generator인가요 iterator 인가요?? 

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

최종값을 출력 값 형식대로 iterable한 데이터 입니다.

vpdtlrdl님의 프로필 이미지
vpdtlrdl

작성한 질문수

질문하기