비동기

    동기(Sync) vs 비동기(Async) / 직렬(Serial) vs 동시(Cocurrent)

    동기(Sync) vs 비동기(Async) / 직렬(Serial) vs 동시(Cocurrent)

    동기(Sync) : 작업을 다른 스레드에서 하도록 시킨 후, 그 작업이 끝나길 기다렸다가 다음일을 진행한다 비동기(Async) : 작업을 다른 스레드에서 하도록 시킨 후, 그 작업이 끝나길 안 기다리고 다음일을 진행한다직렬(Serial) 처리 : 분산처리 시킨 작업을 다른 한개의 스레드에서 처리 - (순서가 중요할 경우) 동시(Cocurrent) 처리 : 분산처리 시킨 작업을 다른 여러개의 스레드에서 처리 - (순서는 상관없고 처리 속도가 중요할 경우) 헷갈려서 정리함 헷갈릴때마다 봐야지

    [C#] Task (1)

    [C#] Task (1)

    칩 제조사들은 cpu의 클럭 스피드를 올리는 것으로는 더 이상 물리적 한계에 부딪히게 되어 코어를 증가시키는 쪽으로 성능을 올렸습니다. 그렇기 때문에 성능 좋은 큰 프로그램을 만들려면 여러 개의 코어가 동시에 작업을 수행할 수 있도록 하는 병렬 처리 기법과 비동기 처리 기법이 필수가 되었죠. 그러나 병렬 처리와 비동기 처리는 말이 좋지, 막상 소프트웨어로 구현하려 들면 간단하지 않습니다. 여기서 잠깐 ★ 병렬 처리와 비동기 처리의 차이 병렬 처리와 비동기 처리는 비슷한 용어 같지민 듯이 엄밀히 다릅니다. 하나의 작업을 여러 작업자가 나눠서 수행한 뒤 다시 하나의 결과로 만드는 것을 병렬 처리 합니다. 이에 비해 비동기 처리는 작업 A를 시작한 후 A의 결과가 나올 때까지 마냥 대기하는 대신 곧이어 다른 ..