일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- mitmproxy
- MediaDataSource
- corePoolSize
- gitignore
- so파일 동적로딩
- android enum
- 오픈소스라이선스
- Service관리
- print callstack
- lufs
- Replaygain
- 네트워크 디버깅
- 음량표준화
- RxJava Programming
- android network
- enum performance
- RxJava 스터디
- Dagger2란
- convert Intent to string
- gitignore작성법
- HashMap vs ArrayMap
- APK로딩
- java callstack
- callstack 출력
- APK 동적로딩
- ArrayMap
- BlockingQueue Capacity
- Service 팁
- Intent String 변환
- convert string to intent
- Today
- Total
목록개발/개발 일반 (5)
일상&개발 로그
ThreadPoolExecutor는 ExecutorService를 상속받은 클래스로Task(Runnable)를 저장하는 BlockingQueue와 이를 수행하는 ThreadPoolSize를 설정할 수 있다. ThreadPoolExecutor 생성자에서 corePoolSize와 maximumPoolSize, BlockingQueue를 지정할 수 있는데,여기서 지정하는 BlockingQueue의 capacity가 unbound인 경우, threadPoolSize는 corePoolSize에서 늘어나지 않는다.구동되는 threadPool의 크기를 maximumPoolSize만큼 늘리려면 BlockingQueue의 capacitiy를 지정해 줘야한다.주의할 점은 capacity를 지정할 경우 corePoolSiz..
소스 변경여부 확인 팁git checkout master/release로 local branch 변경TAG="$(git describe --abbrev=0)" // 해당 branch의 가장 최신 태그명을 가져와서 TAG에 담음git diff --name-only "${TAG}" | grep (변경사항 확인하고 싶은 class나 module명) // local branch와 해당 TAG를 비교하여 변경사항을 출력
Singleton패턴은 하나의 인스턴스만 사용하는 경우 많이 사용되는 패턴입니다. Singleton패턴을 구현하는 방법에는 여러가지가 있는데, 그 중 DCL과 Demand Holder에 대해 알아보겠습니다.(DCL은 "lazy-initialization" 시 locking의 overhead를 줄이기 위해 사용합니다.)기존에 DCL(double-checked-locking)을 많이 사용했었는데, Holder를 사용하면 더 알아보기 쉽게 사용이 가능하다고 합니다. (DCL은 volatile을 사용하지 않으면 Compiler의 reorder에 의해 thread-safe하지 않습니다.) # DCLprivate static volatile Something instance = null; public static ..
오픈소스를 사용할 때 참고하기위해 퍼온 자료입니다. 원 저작자는 http://www.androidpub.com/2582044글의 HackerK님 입니다. GPL -> GNU Public Licence (GNU 공공 허가서) 의 경우는 v2, v3 차이는 기억이 안나지만 이 라이센스의 오픈소스를 사용할 경우 결과물도 반드시 오픈소스여야합니다. LGPL -> GNU Lesser (2.1에서 Library -> Lesser로 변경) General Public License GPL과 비슷하지만, 독점 소프트웨어에 사용 가능합니다. 이 라이센스를 라이브러리 형태로만 사용한다면 소스를 공개하지 않아도 되고, 수정할 경우 그 수정된 라이브러리를 공개해야합니다. 수정된 라이브러리는 GPL이나 LGPL을 따라야합니다. ..