Computer Science/Thread 처리
동기/비동기, 동시성/병렬성
동기처리 / 비동기처리 동기 처리 (Synchronous : 요청과 결과가 동시에 일어나는..) 1개의 루틴을 완료한 후 다른 루틴을 샐행하는 순차적인 방식 요청과 결과가 한 자리에서 동시에 일어남 A노드와 B노드 사이의 작업 처리 단위(transaction)를 동시에 맞추겠다 주로 하나의 작업 혹은 수행시간이 짧은 작업들을 (요청과 결과를 동기 처리하면서) 처리할때 작업처리 단위를 맞추면서 수행하는것을 말함 보통 목적이 같은 일을 진행하기 때문에 요청과 결과를 동시에 일어나도록 처리 단위를 맞춘다. 비동기 처리 (Asynchronous : 요청과 결과가 동시에 일어나지 않을거라는...) 다중 실행 환경에서 여러개의 루틴이 선행 작업의 순서나 완료 여부와 상관없이 실행되는 방식 요청한 결과가 그 자리에서..
Android Thread 처리 방법
new Thread() 생성해서 사용 ↓ ↓ Executor의 클래스를 통해 thread 기능별 분리하여 처리 ↓ ↓ Rxjava를 통한 (reactive programming) 비동기처리 ≡ Kotlin의 coroutine 을 통한 비동기처리
background thread 에서 UI thread 접근하기
1. Handler + Looper.getMainLooper() 일반적인 쓰레드간 상호작용하는 방법인 Handler 이용 new Handler(Looper.getMainLooper()).post(new Runnable() { @Override public void run() { // UI 스레드 작업 imageView3.setImageBitmap(bitmap); } }); 람다식으로 간단하게 표현하면 다음과 같다 new Handler(Looper.getMainLooper()).post(() -> imageView3.setImageBitmap(bitmap)); 2. Activity.runOnUiThread UI 쓰레드의 메시지큐에 작업을 전달(post)하는 방법 activity 인스턴스에 액세스할 수 있는..