스레드 사용법 (Threads an Instagram app)
파이썬Python문법 Python 멀티스레드란? 사용법, 예제 Multi thread, target, args, start, join 앞서 멀티 프로세스Multi process의 의미와 사용 방법에 관해 이야기 해보았습니다. 이번 시간에는 멀티 쓰레드Multithreading에 관해 알아 보겠습니다. 멀티프로세스는 각 각의 프로세스가 독립된 메모리를 가지고 동작한다고 하였습니다. 그러니까 컴퓨터 내의 자원을 많이 소모하게 됩니다. 하지만 드레드Thread의 경우 Thread라는 의미가 가지는 실과 같이 하나의 프로세스 내에서 여러개의 실들이 각 각 움직이게 됩니다.
그리고 그 실Thread은 내부의 메모리를 공유하면서 각 각 움직이므로 프로그램이 가벼워 집니다.
Threads, 트위터Twitter 상위호환
마크 저커버그가 트위터를 똑같이 베끼기만 해서 Threads를 만들었다면 출시하지 않았을 것입니다. 마크 저커버그는 개발자이기도 하지만 이미 페이스북과 인스타그램을 보유한 세계적인 사업가이기도 합니다. 트위터가 일론 머스크에 인수되고 삐걱대는 사이 Threads 개발을 시작했다고 알려진 것만 보더라도 저커버그의 사업가적 마인드를 알 수 있습니다. Threads가 일반적인 트위터에 더해진 특수한 기능은 외부 웹사이트로 연결되는 링크 및 최대 5분 정도 길이 동영상과 사진도 올릴 수 있습니다.
트위터를 뛰어넘어 소셜네트워크 플랫폼으로 더 많이 사용될 것이라는 이유는 인스타그램과 연동이 된다는 점입니다. 인스타그램과 연동이 주는 강점은 이미 전 세계 적으로 월간 이용자수 20억 명에 이르는 인스타그램의 사용자들을 별도 가입 절차 없이 간편하게 로그인이 가능하게 만들었습니다.
함수의 특성과 스레드 적용
스레드는 실행 흐름입니다. 이 실행 흐름은, 소스 코드로 구현된 비지니스 로직 덩어리로 일반적으로 함수 형태로 사용합니다. 그렇기에 스레드의 실행에서 실행 될 로직을 함수 형태로 구현하여 스레드의 인스턴스에 전달하는 방법이 일반적입니다. 스레드의 함수 사용에서 고려해야 할 부분은 두가집니다. 1. 함수는 매개변수를 전달받을때, 변수 형태다. 함수를 매개변수 형태로 전달 할 수 없습니다.. 그렇다면 어떻게 함수를 매개변수로 전달 할 수 있는가? 2. 함수는 반환값을 사용할 있습니다.
스레드 동작은 반환값을 활용하는 것이 고려되었는가? 기본 실행 구조 Thread의 인스턴스를 생성해 인스턴스 생성자의 매개변수로, 메서드를 넘긴다.
스레드 용어
아직 출시한 지 많이 안 됐는데 벌써 스레드 용어가 생겼는데요. 한번 알아볼까요?
– 쓰팔 : 쓰레드 팔로우 – 쓰팔완 : 쓰레드 팔로우 완료 – 쓰린이 : 쓰레드 + 어린이 = 스레드 초보 – 쓰친 : 스레드 친구 – 쓰님/스님 : 쓰팔은 했지만 어색한 사이 – 쓰팔러 : 스레드 팔로워 – 쓰인물 : 스레드 완전 적응자 – 쓰레고침 : 새로고침(피드 새로고침) – 쓰라클모닝 : 굿모닝~ – 쓰팸 : 예방 – 쓰팔 취했냐 : 팔로우 취소했냐? – 폐기물 : 스레드 하면서 기분 좋습니다.
쓰시마셍 미안합니다. 쓰리가또 고맙다. 쓰고이 재밌는 글을 읽었을 때 쓰며들다. 나도 모르게 적응해서 여기서만 노는 중 쓰레빠 빠져든다.
스레드 사용법
스레드가입을 다. 하고 일반적인 설정이 끝나면 다음과 같은 화면이 뜹니다. 인스타그램이랑 비슷하게 아래 메뉴에 홈, 검색, 글쓰기, 알림, 프로필 탭이 있습니다. 홈피드에는 자기가 팔로우한 계정과 팔로우하지 않는 계정의 글이 모두 나옵니다. 여러분이 보고 싶지 않은 게시물은 숨기기 기능으로 숨기면 추후에 알고리즘이 파악해서 연관 주제는 뜨지 않을 겁니다. 글 쓰는 방법은 글쓰기 탭을 선택하고 글을 쓰면 됩니다.
아주 간단하죠? 다음과 같은 조건이 있으니 글을 쓰기 전에 확인 바랍니다.
파이썬 멀티스레드Multi threa 선언
Thread 선언은 threading의 Thread로 합니다. 그리고 Tread의 시작은 start으로 종료는 join으로 합니다. target은 thread에서 동작시킬 함수 값을 정하고 args는 입력값을 사상 합니다. 아래 예제는 기본 thread 예제로 2개의 thread를 시행하고 각 각에 다른 time.sleep을 줘서 독립적으로 움직이는지를 확인합니다. 예제 코드 1516번 라인 thread 선포 1819번 라인 thread 스타트 2122번 라인 thread 종료
1a23bc스레드가 각 각 독립적으로 출력 했음을 알 수 있습니다.파이썬 멀티스레드Multi threa 이름, 프로세스 명 확인 currentthread.name 함수를 사용해 현재 thread의 이름과 os.getpid 함수로 현재 process 명을 확인하겠습니다.
자주 묻는 질문
Threads 트위터Twitter
마크 저커버그가 트위터를 똑같이 베끼기만 해서 Threads를 만들었다면 출시하지 않았을 것입니다. 궁금한 내용은 본문을 참고하시기 바랍니다.
함수의 특성과 스레드 적용
스레드는 실행 흐름입니다. 자세한 내용은 본문을 참고하세요.
스레드 용어
아직 출시한 지 많이 안 됐는데 벌써 스레드 용어가 생겼는데요. 좀 더 자세한 사항은 본문을 참고하시기 바랍니다.