일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Java
- DTS
- 수필
- 파노라마
- 이클립스
- nexus 5
- 크롬캐스트
- Qumi Q2
- NAS
- 자바
- 논문
- 카메라
- Git
- 온타리오
- 안드로이드
- 5.1채널
- Wamo
- 홍콩
- 홈씨어터
- 샤오미
- 사진
- 미니 라우터
- Dolby
- Chromecast
- 캐나다
- Slimport
- 프로그래밍 팁
- 홈시어터
- 소프트웨어 공학
- 대학원생
- Today
- Total
목록Lifove Programming (12)
Lifove Story
멀티쓰레드를 이용한 프로그래밍이 좋다는 생각만 있었지, 얼마나 좋을지는 별로 피부에 와 닿지 않아서, 별로 사용을 하지 않았었다.대신, 서버에 프로세스를 여러개 돌리는 방식으로 성능을 높이는 방법을 썼었는데, 최근에 내가 사용하는 서버의 코어가 24개인 것을 보고, 쓰레드 24개를 한번에 돌리면, 20일 돌아갈 것을 하루 만에 끝낼 수 있겠구나 하고, 내가 만든 프로그램을 멀티스레딩을 사용할 수 있게 구현을 하였다.기존에는 CPU사용율이 100% * 내가 돌리는 프로세스 수 (보통 4개) =400%가 맥시멈이었는데, 멀티스레딩이 적용된 프로그램은 최대 CPU사용량이 2400%가 나온다. 성능의 효율 측면에서 쓰레드를 사용하지 않을 수 밖에 없었다.쓰레드를 적용하는 방식은 여러가지 있는데, 일단은클래스를 ..
자바 프로그래밍의 장점 중 하나가, 오픈소스로 개발된 다양한 라이브러리들을 사용할 수 있다는 점이다.자바 기반의 유용한 오픈소스 라이브러리 개발프로젝트를 하는 가장 큰 기관으로, Apache Software Foundation을 들 수 있을 것이다. 아파치 웹서버를 만든 단체이다. 줄여서 ASF라고도 불리는데, 이 곳(http://projects.apache.org/indexes/alpha.html)에 가면, ASF에서 개발하는 전체 프로젝트 리스트를 볼 수 있다.앞 포스팅에서 이야기한, 커멘드 라인 옵션들을 쉽게 처리해 주는 CLI 프로젝트도 ASF의 오픈소스 프로젝트 중 하나이다.대부분의 오픈소스 프로젝트 사이트에 가면, 소스코드와 컴파일된 바이너리 파일들을 모두 다운을 받을 수 있는데, 해당 바이너..
연구를 하다가 보면, 여러가지 실험을 돌리기 위한 툴 프로그램을 개발할 때가 많다. 주로 자바로 개발을 하고, 실행가능한 jar파일로 Export하여, 리눅스 서버에서 터미널로 접속해서 커멘드 라인으로 실행할 수 있게 만든다.그러다 보니, 프로그램 실행시 융통성을 위해 각종 옵션값들을 커멘드라인 파라미터로 처리해야 할 경우가 많은데, 프로그램을 계획없이 짜다보면, 옵션값들이 15개 이상 많이 늘어나는 경우가 있어서, 옵션값의 순서가 헷갈리기도 하고, 옵션들을 잘못 넣는 문제로 실행시 문제가 발생하기도 쉽다.이런 경우, Apache Software Foundation에서 오픈 소스로 만들어 놓은 Commons CLI라이브러리를 이용하면, 효율적으로 아래와 같은 다양한 종류의 커멘드라인 옵션들을 처리하게 할..