공유변수 접근할때 쓰레드끼리 그 전역변수나 힙영역에 있는 애들을 공유하잖아요
이때 전역변수를 공유할때 cpu에서 두 쓰레드가 하나의 전역 변수를 쓰는데
각 쓰레드마다 이 전역 변수를 자기 레지스터에 따로 저장되고 각각 처리하기때문에
실제로 의도한대로 값이 안나오기땜에 상호 배제 방식으로 수행한다고 알고 있거든요
근데 상호배제방식으로 처리하면 쓰레드를 쓰는 의미가 없지 않나요? 쓰레드 하나가 값을 처리할때까지 기다리고... 이건 쓰레드를 굳이 사용 안해도 될거 같은데
그래도 쓰레드를 쓰는게 더 효율적이라 쓰는건가요? 모르겠습니다...ㅠㅠ
맞어 쓰레드를 1줄로 세우는거야
해당 댓글은 삭제되었습니다.
음 그러면 자바나 c언어 같은데서 쓰레드를 사용하는건 별로 좋지 ㅏ않은건가요 그럼 왜 굳이 라이브러리로 쓰레드를 쓰게끔 구현을 해놓은걸까요..?? 공부하는데 어디다가 써야하는지 모르겠네요,,,,
하나의 프로세스가 여러개의 쓰레드를 씀 상호배제방식은 서로 신경안쓰는건가? 그럼 push add pop이런식이라 순서가 꼬일수도 있음 그래서 요즘 mutex인가 씀 왜 굳이 안쓰는지 모르지만 좀 더 기계어적인 방식이라 훨 빠른게 쓰레든디 - dc App
근데 mutex를 사용시 배분문제로 속도가 조옷나게 느림 - dc App
넴 상호배제가 mutex라고 책에 나와있는데 이게 순서 정해주는거라 그냥 쓰레드 안쓰는거랑 다를게 없어보여서 질문드렸거든요 그럼 혹시 어플리케이션을 개발할때 대표적으로 쓰레드를 써야하는 상황이 있나요?
그니깐 눈으로 보기 힘든데 만약 어떤 사이트나 어플에 1만명이 동시에 접속한다고 생각해보셈 ( 특가같은거) 그 때 쓰레드가 필요한거 그 외에도 규모가 커질수록 쓰레드가 필요해짐 .. 근데 mutex쓰면 멀티쓰레드 느낌은 안들듯.. 8ㅅ8 일딴 기다리는 시간이 있기에 계산시간만 따로 생각하면 0.0001초?