본문 바로가기
[Kotlin] Coroutine vs. thread (Light-weight thread 가 뭔 말이야?) [Kotlin] Coroutine vs. thread (Light-weight thread 가 뭔 말이야?) https://stackoverflow.com/questions/43021816/difference-between-thread-and-coroutine-in-kotlin -Coroutine 은 stackless, stackful 이렇게 두 가지 type 이 있다.Kotlin 은 stackless coroutine 이다. stackless 이기 떄문에 약간의 기능제한이 있다. -https://www.quora.com/Why-is-it-that-with-a-stackless-coroutine-only-the-top-level-routine-may-be-suspended Stackless corouti.. 2018. 11. 26.
[Kotlin] Coroutines tutorial - async code 쉽게 짜기 [Kotlin] Coroutines tutorial - async code 쉽게 짜기 https://github.com/Kotlin/kotlinx.coroutines/blob/master/coroutines-guide.md -Kotlin coroutines 는 async code 를 sync code 의 구조를 바꾸지 않고 짤 수 있게 도와준다. Coroutine Basics - modified내용이 바뀌어서 새로 정리하였습니다. -> Coroutine Basics ( 코루틴 기초 ) 예전 기록을 보고 싶으시면 아래 "더보기" 버튼을 눌러주세요!Hello World Coroutine -launch{ delay(1000L) println(“World!”)}println(“Hello,”)Thread.slee.. 2018. 11. 25.
Efficient Android Threading #8 AsyncTask 로 백그라운드 태스크를 UI 스레드에 묶기 Efficient Android Threading #8 AsyncTask 로 백그라운드 태스크를 UI 스레드에 묶기 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용.10.1. 기본 사항 -AsyncTask 는 실행이 완료되면 다시 실행할 수 없다.즉, execute 메서드는 일회성의 동작이고 스레드의 동작처럼 AsyncTask 인스턴스마다 오직 한 번만 호출할 수 있다. -doInBackground 작업이 끝나면 onPostExecute 혹은 onCancelled 둘 중 하나만 수행된다. ** 10.1.1 생성과 시작 -AsyncTask 의 기본 생성자는 UI 스레드에서 호출되어야 한다.젤리빈 이전의 플랫폼에서 UI 스레드가.. 2018. 3. 24.
Efficient Android Threading #7 Executor 프레임워크를 통한 스레드 실행 제어 Efficient Android Threading #7 Executor 프레임워크를 통한 스레드 실행 제어 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용.9.1. Executor -Executor 는 interface 로 void execute(Runnable command); 하나의 함수를 갖는다.단순하지만 강력하다. 이는 테스크를 만드는 것과 실행 사이에 분리를 확실하게 해주기 때문에 기본 Thread 인터페이스보다 더 자주 사용된다. -public class SimpleExecutor implements Executor { @Override public void execute(Runnable runnable){ new.. 2018. 3. 23.
Efficient Android Threading #5 기본 스레드의 생명주기 관리 Efficient Android Threading #5 기본 스레드의 생명주기 관리 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용.7.1. 기본 사항 ** 7.1.1. 생명주기 -스레드는 다음의 생명 주기를 갖는다. 생성 : 스레드를 생성한 스레드와 동일한 우선순위로 할당된다.실행 : start() 가 호출될 때 실행 환경이 설정되고 실행될 준비가 된다. 이후 스케줄러가 이 스레드를 선택하면 run 메서드가 호출된다.차단/대기 : sleep(), yield() 등이 수행되었을 때이다.종료 : run 메서드가 종료된 상태이다. 최종상태에며 Thread 인스턴스나 실행 환경은 재사용 할 수 없다. ** 7.1.2. 인터럽트 -.. 2018. 3. 21.
Efficient Android Threading #4 메모리 관리 Efficient Android Threading #4 메모리 관리 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용.6.1. 가비지 컬렉션 -각 프로세스(결과적으로 각 앱)는 자신만의 VM 과 가비지 컬렉터를 가진다. -진저브레드까지 안드로이드의 가비지 컬렉션은 메모리가 회수되는 동안 앱 실행이 중지되는 순차적 실행이었다.이는 UI rendering 의 일시적 멈춤으로 이어질 수 있었다.허니컴부터 GC 는 앱 스레드를 중지하지 않고 자체 스레드에서 동시적으로 실행된다. -달빅 GC 는 mark & swap 이라는 일반적인 두 단계 메커니즘을 사용한다.마크 단계는 객체 트리를 탐색하고 다른 객체에 의해 참조되지 않는 모든 미사.. 2018. 3. 20.
[android] RxAndroid 맛보기 [android] RxAndroid 맛보기 http://www.vogella.com/tutorials/RxJava/article.htmlhttps://code.tutsplus.com/tutorials/getting-started-with-reactivex-on-android--cms-24387https://realm.io/kr/news/rxandroid/ -Observable.just() 는 Observable 을 생성한다.이렇게 생성된 Observable 에 subscribe 가 붙으면 곧바로 just() 에 전달된 녀석이 onNext() 로 전달된다.List list = Arrays.asList(“Android”, “Ubuntu”, “Mac OS”);Observable listObservable = .. 2018. 3. 10.
[iOS Study] 병렬 프로그래밍 가이드 ( dispatch queue ) [iOS Study] 병렬 프로그래밍 가이드 ( dispatch queue ) https://developer.apple.com/library/ios/documentation/General/Conceptual/ConcurrencyProgrammingGuide/OperationQueues/OperationQueues.html#//apple_ref/doc/uid/TP40008091-CH102-SW1 About Dispatch Queues -모든 dispatch queue 는 FIFO 이다. -다음의 dispatch queue 가 있다. serial concurrent main dispatch queue -serial queue ( private dispatch queue ) 는 한번에 하나의 task 만 수.. 2018. 2. 1.
[Objective-C] 병렬 프로그래밍 [Objective-C] 병렬 프로그래밍 출처 : OS X 구조를 이해하면서 배우는 Objective-C Chap 19. 19.1. 멀티 스레드 * 19.1.1. 스레드의 기본 개념 -스레드(thread)란 프로세스(process)안에서 CPU 이용권을 가진 가상적인 실행 단위이다.일반적으로 하나의 프로세스에는 하나의 스레드밖에 없지만 복수의 스레드를 생성해 프로세스 안에서 병렬로 동작시킬 수도 있다. -프로그램 실행이 시작될 때부터 동작하는 스레드를 메인 스레드라 하고 그 외에 나중에 생성된 스레드를 세컨더리 스레드(secondary thread) 또는 서브 스레드(subthread)라고 한다. -부모 스레드는 자식 스레드의 실행이 끝나길 기다렸다 합류(join)할 수 있다.대다수의 스레드 구현은 따로.. 2018. 1. 10.
반응형