Please enable JavaScript.
Coggle requires JavaScript to display documents.
advanced Java, Java Reflection, Multithread, Multithreading, parallel,…
-
Java Reflection
-
Modifier
access modifier
public, private, protected
non-access modifier
- abstract, final, static, interface
- synchronized, native, volatile, transient
Serialized vừa là class, vừa là interface
-
Field
Class.getDeclaredFields()
- all field
- excludes inherited fields
Class.getField()
- get public field
- include superClass
WHEN
rule
-
-
- generic
- work with all type in similar way
chậm vì
-
-
phải check một đống thứ như isExisted, interface... để get được type
- isaccessable
- parameter type matches
- create instance
- ...
JVM feature
- Runtime access to classes and objects
-
Obtain Class<?>
- Object.getClass()
- .class
- Class.forName()
-
-
Multithread
OS fundamental
context switching
- OS chạy 1 hoặc nhiều process cùng lúc
- process có thể có 1 hoặc nhiều thread cùng lúc, tất cả thread cạnh tranh nhau để chạy trên CPU
Context switch: là quá trình mà cpu…
- stop thread 1
- schedule thread 1 out
- schedule thread 2 in
- start thread 2...
- context switch is not cheap
- when switch to diff thread (store data for on thread, restore data for another thread)
- => Nếu có quá nhiều thread => quá trình quản lý thread còn tốn nhiều chi phí hơn
- Thread tiêu thụ ít resource hon process
- context switching giữa các thread trong cùng process thì tiết kiệm chi phí hơn CS giữa các thread khác process
-
WHEN
- mulithread in a single app
- new single app in diff process
Multithread Architecture
- task share a lot of dât
- thread are much fasster to create and destroy
- switching between thread of same process is faster
-
responsiveness
-
parallel
- mulitple task executing parallel using a single core
- multiple core we can truly run task completely in parallel
Thread
khi OS chạy một application
- load instance application từ disk/hard drive lên memory
- instance này được gọi là progress(context)
- mỗi Process completely isolate với process khác đang được run trên system
-
motivation
- responsiveness achieved by concurrency
- performance achieved by parallelism
Multithreading, parallel, Async
-
-
-
Thread pool
limit of thread
-
thread are expensive
thread có runtime stack, memory, regisster... của riêng nó
Solution
Threadpool
-
-
benefit
no need to manually create, start, join the threads
-
-