본문 바로가기
[Java Concurrency] 구성 단위 #1 [Java Concurrency] 구성 단위 #1 5.1. 동기화된 컬렉션 클래스 - 동기화되어 있는 컬렉션 클래스의 대표 주자는 Vector 와 Hashtable 이다. - JDK 1.2 부터는 Collections.synchronizedXxx 메소드를 사용해 이와 비슷하게 동기화되어 있는 몇 가지 클래스를 만들어 사용할 수 있게 됐다. 이와 같은 클래스는 모두 public 으로 선언된 모든 메소드를 클래스 내부에 캡슐화해 내부의 값을 한 번에 한 스레드만 사용할 수 있도록 제어하면서 스레드 안전성을 확보하고 있다. - 동기화된 컬렉션 클래스는 스레드 안전성을 확보하고 있기는 하다. 하지만 여러 개의 연산을 묶어 하나의 단일 연산처럼 활용해야 할 필요성이 항상 발생한다. - 동기화된 컬렉션 클래스는 대.. 2017. 4. 20.
[Effective Java] 스레드 그룹을 사용하지 말자. [Effective Java] 스레드 그룹을 사용하지 말자. - 스레드, 락, 모니터에 더하여 스레드 시스템에서 제공하는 기본 추상체가 스레드 그룹(thread group) 이다. 스레드 그룹은 원래 보안을 목적으로 애플릿을 격리시키는 메커니즘으로 구상되었다. 그러나 실제로는 그런 기대를 충족시키지 못해 자바 보안 모델의 표준에서 언급되지 않을 정도로 쇠약하다. - 스레드 그룹은 기능이 별로 없다. 단지 Thread 클래스의 기본 메소드들을 여러 스레드가 포함된 그룹에 일괄로 한번에 적용할 수 있게 해준다. 그런 기본 메소드들 중 상당 수는 이미 사용금지 되었으며 남은 메소드들은 사용되는 경우가 드물다. - ThreadGroup 클래스의 API 메소드는 스레드 안전 관점에서도 빈약하다. 하나의 스레드 그.. 2017. 3. 20.
[Java] Executor : Java Concurrency API [Java] Executor : Java Concurrency API - Executor Interface 제공된 Runnable 을 실행하는 객체가 구현해야 할 인터페이스. execute( Runnable ) 을 구현해야 한다. public interface Executor {void execute(Runnable command);} - ExecutorService interface Executor 의 라이프 사이클을 관리할 수 있는 기능을 제공한다. 추가로 Runnable 뿐만 아니라 Callable 도 작업할 수 있다. void shutdown() 이미 Executor 에 제공된 작업은 실행되지만, 새로운 작업은 수용하지 않는다. List shutdownNow() 현재 실행중인 모든 작업을 중지시키.. 2017. 3. 8.
[Effective Java] 박스화 기본형보다는 기본형을 사용하자. [Effective Java] 박스화 기본형보다는 기본형을 사용하자. - 기본형과 박스화 기본형 간에는 크게 세 가지 차이점이 있다. 1. 기본형은 자신의 값만을 갖는 반면, 박스화 기본형은 식별성(identity)를 갖는다. 두 개의 박스화 기본형이 값은 같지만 == 로 비교하면 다를 수 있다는 것이다. 2. 기본형은 완전한 기능 값만을 갖는 반면, 박스화 기본형은 자신과 대응되는 기본형이 가질 수 있는 모든 기능 값에 추가하여 비 기능 값인 null 을 갖는다. 3. 기본형은 일반적으로 박스화 기본형에 비해 실행 시간과 메모리 사용 효율이 좋다. - == 비교 연산자를 박스화 기본형에 적용하면 대부분 틀린 결과가 나온다. 박스화 기본형을 비교할 떄는 두 개의 지역 변수를 추가하여 primitive 타.. 2017. 2. 2.
[기사] 스마트폰은 곧 사라진다. [기사] 스마트폰은 곧 사라진다. 출처 : http://news.joins.com/article/19461133 -결론우리 주변의 모든 사물이 연결되고 똑똑해지면서(IoT) 스마트폰의 필요성이 떨어진다. -현재 스마트폰은 하드웨어적으로 상위 평준화되었다.스타일만 조금씩 다르고 기능은 다 거기서 거기이다. -앞으로의 진짜 혁신은 앱, 클라우딩, 그리고 IoT 단말들이다. -스마트폰 산업이 끝났다는 것은 아니다.70억 인구중 35억 명이 스마트폰 보유.약 10억 이상의 잠재고객 예상. -에릭슨 컨슈머랩의 조사결과, 젊은 세대 절반이 2021년에는 스마트폰을 사용하지 않을 것 같다는 응답. -아마존 에코, 애플 시리,구글 나우 등 음성인식 서비스는 더 편리한 앱에 대한 접근이라는 혁신의 출발점이다. -스마트 .. 2016. 1. 23.
[android] Google Play Service 는 나쁜놈이었다. Google Play Service 는 나쁜놈이었다. Google Play Service 가 현재( 2015-09-12 기준 ) 7.x 버전까지 나왔다. 그런데 이 구글 플레이 서비스가 5.0 ~ 6.5 미만까지는 골치덩어리였다. 여러가지 기능들이 추가되어 편리하게 구글이 제공하는 기능, 서비스들을 제공받는 것은 좋았지만,dex 파일의 method 갯수 제약 측면에서 노답인 상황이었다. 한 dex 파일은 65k 개의 method 만 가질 수 있는데, Google Play Service 5.0 버전에서는 이 녀석 혼자 20k 이상의 method 를 가지고 있다. 그래서 구글 플레이 서비스 library 를 사용하면서다른 3rd party library 를 사용하면method limit 에 걸려 문제가 될 .. 2015. 9. 16.
[앱 추천] 다음 숫자를 찾아줘! - 스피드 게임. [앱 추천] 다음 숫자를 찾아줘! 스피드 게임. ** 설치해서 사용해보려면 여기를 클릭 ** 오늘 소개할 앱은 간단한 스피드 게임 앱이다. 처음 앱을 실행하면 점수 서버에 연결된다. 유저가 플레이한 점수가 서버에서 공유가 된다. 서버는 구글 플레이 서버로, 구글 플레이를 액티브 하게 사용하는 사람이라면, 같은 서클안에 있는 사람들과 점수대결을 할 수도 있고, 전 세계에 있는 유저들과도 점수 대결을 펼칠 수 있다. 서버연결을 마치면 게임을 시작할 수 있다. 가운데 Start Game!! 이라고 쓰여진 버튼을 클릭하면 게임이 시작된다. 게임 방법은 매우 간단하다. 1부터 시작해서 다음 숫자를 빠르게 찾아서 터치해주면 된다. 1, 2, 3, 4 -> 이런 식으로 말이다. 게임을 시작하면 3부터 카운트 다운이 .. 2014. 4. 9.
[앱추천] 안전한 위치정보 앱 "오빠 나 어딨게?" ( 안드로이드 ) 앱추천, 안전한 위치정보 앱 "오빠 나 어딨게?" ( 안드로이드 ) ** 앱을 설치해보려면 여기를 클릭( 구글 플레이 스토어 링크 ) ** 오늘 소개하려고 하는 앱은 안전한 위치정보 앱 "오빠 나 어딨게?" 이다.기존의 문제가 되었던 무단 위치정보 수집앱과는 달리이 앱은 반드시 단말 사용자 ( 주인 ) 의 동의가 있어야만 상대방에게 위치정보가 전송된다. 먼저 이 앱은 무료 앱이다. 처음 앱에 접속하면, 전화번호와 이름을 입력하게 되어있다.개인정보는 "오빠 어디야?" 기능을 사용하기 위해서만 저장되며, 다른 용도로는 절대 쓰이지 않는다.이에 대한 약관은 여기에서 확인할 수 있다. ** 오빠 어디야 개인정보 관련 약관. ** 이름을 입력하면 이렇게 4가지 메뉴가 뜬다. "오빠 나 택시타" 는 여자친구를 택시.. 2014. 1. 10.
조선시대의 주민등록증. 호패법 호패법( 號牌法 ) 조선 태종 때 처음 실시된 제도로 16세 이상의 남자에게 호패를 가지고 다니게 하던 제도이다. 현재의 주민등록증과 비슷한 것으로 조세 징수, 인구 파악, 군역 부과 등에 활용하기 위해 실시하였다. 백성들이 호패를 받으면 곧 호적과 군적에 올려지고 동시에 국역을 져야만 했으므로 이를 기피하는 현상이 생겼다. 국역을 피하기 위해 양반의 노비로 들어가는 경향도 생기고, 호패의 위조, 교환 등이 늘어나 국가적 혼란까지 초래하게 되었다. 이에 호패법은 잠시 중단되기도 했다. 호패 위조자를 극형에 처하기도 하고, 호패를 차지 않은 자는 엄벌에 처하는 등의 법을 마련하여 조선 후기까지 제도가 유지되었다. 2013. 2. 4.
반응형