EBS 라디오가 이번 3월부터 새로 개편이 됐습니다.
+출퇴근 하면서 아침에는 Power English와 Morning Special을 듣고 저녁에는 북카페를 듣고 다녔습니다.
그런데 3월부터 저녁에 "잉글리쉬 클리닉"을 조혜련과 문단열이 진행하는 초급영어 회화로 변경이 되었습니다.
여행에서 필요한 회화를 중심으로 기초영어 회화를 습득할 수 있게 구성이 되어있습니다. 유쾌한 두분이 재미 있는 설정으로 진행을 해서 정말 쉽게 공부할 수 있습니다.
일주일에 5일은 새로운 회화를 배우고 토요일은 정리를(한번도 듣지 않았지만...)합니다. 같이 스터디를 하면서 공부하면 잘 되겠지만 시간이 없는 저는 보통 혼자합니다. 그래서 혼자하면 재미 없으니 포스팅에 일주일에 한번 전체 내용을 녹음해서 올릴 예정입니다. 같이 공부하시고 싶으신 분은 녹음하시고 유툽에 올리시거나 기타 다른방법으로 올리시고 링크를 공유해서 같이 공부해봐요(서로 헐 뜯어 봅시다.ㅋ)
제 녹음 파일을 들어보니 정말... 느끼해서 죽을 꺼 같아요. 왜 녹음해서 공부하라고 하는지 알겠더라구요. 발음을 제대로 했다고 생각했는데 다시 들어보니 완전 이상하게 발음하고, s자가 없는 단어에 그냥 s자를 붙여서 발음하고 그러네요. 한 10번정도 녹음해야 그나마 좋아지더라구요.
자~ , 잉클!
참고로 윈도우 녹음기로 녹음된 wma 파일을 mp3로 파일로 변환해주는 온라인사이트가 있습니다. 변환이 필요하신분은 아래의 링크에 가셔서 변환해서 올리세요~
'영어 > EBS 잉글리쉬 클리닉' 카테고리의 다른 글
[잉글리쉬 클리닉] 5주차 (2017.4.1) (0) | 2017.04.07 |
---|---|
[잉글리쉬 클리닉] 4주차 (2017.3.25) (2) | 2017.03.31 |
[잉글리쉬 클리닉] 3주차 (2017.3.18) (0) | 2017.03.23 |
[잉글리쉬 클리닉] 2주차 (2017.3.11) (0) | 2017.03.23 |
[잉글리쉬 클리닉] 1주차 (2017.3.4) (0) | 2017.03.20 |
Thread Safe란 클래스나 함수, 객체등이 멀티쓰레드 환경에서 정상적으로 동작을 보장하는 것을 의미한다.
아래의 예제들을 통해서 쓰레드 안전한 코드와 안전하지 않는 코드를 살펴보고, 쓰레드 안전하게 만들 수 있는 방법들을 검토해 보겠습니다.
1.쓰레드 안전하지 않는 코드의 예
class NoThreadSafeClass { private int UserAccessCount = 0; public int getNowAccessCount() { UserAccessCount = UserAccessCount + 1; return UserAccessCount; } }
+위의 클래스가 현재 접속한 사용자의 횟수를 리턴하는 함수가 있어서 여러 쓰레드에서 동시에 getNowAccessCount() 메소드를 호출 한다고 할 때, 해당 쓰레드가 접속 할 때의 횟수를 리턴 받는다고 보장 못한다. 하나의 쓰레드에서 UserAccessCount를 증가 시키고 리턴받기 전에 다른 쓰레드에서 UserAccessCount를 증가 시킬수 있는 상황이 존재하기 때문이다. 즉 접속해서 1의 결과가 와야되는데 2이상이 올 수 있다는 이야기 이다.
2.쓰레드 안전한 코드의 예
class ThreadSafeClass { private int UserAccessCount = 0; private Object thisLock = new object(); public int getNowAccessCount() { lock (thisLock) { UserAccessCount = UserAccessCount + 1; return UserAccessCount; } } public string getUpperCase(string willToUpperCaseName) { string UpperCaseName; UpperCaseName = willToUpperCaseName.ToUpper(); return UpperCaseName; } }
+위에서는 2가지의 함수가 존재한다. 모두 쓰레드 안전하다. 위 1번의 쓰레드 안전하지 않는 코드를 쓰레드 안전하게 변경하려면 lock구문을 써서 동시에 UserAccessCount를 증가시키지 못하게 처리하면 된다. getUpperCase 함수도 쓰레드 안전하다. (getUpperCase처럼 함수를 만드는 경우는 없겠지만 설명용으로만 사용되는 소스니 이해 바랍니다.) 함수 자체의 로컬 변수를 사용하므로 여러 쓰레드에서 동시에 호출에도 다른 쓰레드에 영향을 받지 않는다.
3.쓰레드 안전한 코드를 만드는 방법
1.무엇보다 공유자원을 사용하지 않는다. 로컬변수를 사용함으로 써, 각각의 쓰레드가 자신만의 변수를 가지게 한다.
2.불변의 객체(Immutable Object)를 만든다. 클래스를 만들 때, 내부 변수를 변경 불가능하게 만든다. 한번 초기화 될 때 생성자에 의해서 내부 변수가 설정이 한번 되면 변경이 불가능해야한다. +여기서 주의 할 점은 클래스이 내부의 멤버변수를 참조형 자료타입이면 setter가 없더라도 참조된 객체를 통해서 외부에서 변경을 할 수 있는 가능성이 있습니다. 참조형 자료타입이면 생성자에서 새로 객체를 생성해서 값을 복사해야 한다.
3.불가피하게 공유자원을 사용하려면 상호배제(Mutual exclusion)를 해야한다. 공유자원에 접근시에 lock을 걸어서 여러 쓰레드에서 하나의 자원을 동시에 점유하지 못하게 처리한다.
'프로그래밍 > C#' 카테고리의 다른 글
[C#] 느슨한 결합과 강한 결합 (Loose Coupling VS Tight Coupling ) (3) | 2017.04.07 |
---|---|
[C#] const VS readonly (0) | 2017.03.23 |
[C#] ArraryList VS. List<T> (0) | 2017.03.06 |
[C#] if else VS switch 어떤것을 사용할까? (0) | 2017.03.06 |
[C#] 파일 처리 (폴더 생성 , 파일 생성 및 로드 ) (0) | 2017.02.21 |
![]() |
|
클라우스 슈밥의 제4차 산업혁명
+4차 산업혁명이 독일에서 발표가 되었다. 4차 산업혁명으로 인해 영향받는 산업분야에 대한 분석을 통해서 앞으로 사회가 어떻게 변화될지를 짐작 할 수가 있다. 또한 그로 인해서 발생하는 여러 부정적인 측면들에 대해서도 조명한다. 특히 저자는 4차 산업혁명으로 인한 일자리 감소, 인권 문제등의 사회학적인 측면에 대해서 고민한다. 모두가 공생할 수 있는 사회를 만들어 가는 것이 앞으로의 숙제이다. 4차 산업혁명이 특정 집단, 특정 계급에게만 이롭게만 된다면 안된다. 기존의 기득권을 버리고 모두가 함께 행복하게 살 수 있는 그런 사회를 만들어가는 것이 앞으로 풀어야 할 과제인것이다.
[책에서 다시 읽어볼 만한 내용]
1. 1차 부터 4차까지의 산업혁명
1차 산업혁명 ; 1760~1840년경에 걸쳐 발생한 철도 건설과 증기기관의 발명을 바탕으로 기계에 의한 생산을 이끔
2차 산업혁명 : 19세기 말에서 20세기 초까지 이어진 전기와 생산조립 라인의 출현으로 대량생산이 가능해짐
3차산업혁명:1960년대에 시작된 반도체와 메인프레임 컴퓨팅,인터넷이 발달 ( 컴퓨터 혁명, 디지털 혁명)
4차 산업혁명:디지털혁명을 기반으로한 유비쿼터스 모바일 인터넷, 더 저렴하면서 작고 강력해진 센서, 인공지능과 기계학습이 특징
2.지구촌 곳곳에서는 아직도 과거의 산업혁명이 지속되고 있다. 세계 인구의 17퍼센트가 아직 제2차 산업혁명을 경험하지 못한 상태이다. 전기사용이 어려운 사람이 약 13억명, 전 세계 인구 절반이 넘는 40억명은 인터넷을 사용하지 못하고 있다. +이 부분을 읽으면서 뒷통수를 맞은 느낌이었다. 우리나라에서 인터넷은 공기같은 존재이다. 그래서 그 존재를 더 못느끼고 있었는데 아직도 세계 곳곳에서 과거의 산업혁명을 경험하지 못한 곳이 많다는 것에 다시 한번 놀랐다. 국가적인 측면에서 정부가 대응을 잘 하지 못해서, 4차 산업혁명의 큰 조류에 합류하지 못하고 파도에 휩쓸리게 된다면 우리나라도 처음에 언급된 나라들 처럼 전락할 지도 모른다.
3.블록체인(분산원장방식) : 거래 기록과 승인이 이루어지기 전에 컴퓨터 네트워크상에서 참여자들 공동의 검증을 받아야하는 보안 프로토콜이다. 대표적인 브록체인 시스템은 비트코인(Bitcoin), 앞으로는 각종 기관을 대신해 출생 및 사망증명서, 소유권, 투표에 이르기까지 코드화 할수 있는 모든 종류의 거래가 블록체인 시스템을 통해 가능해질 것이다. +블록체인 기술로 인해서 가장 타격받는 분야는 금융권인것 같다.
4.4차 산업혁명이 가져올 부정적 영향 특히 불평등,고용,노동시장에 관련된 문제
5.저직능 저급여, 고직능 고급여에 따른 노동시장 분리는 심화 될 것이다.
6. 제4차 산업혁명으로 저렴한 노동력이 더는 기업의 경쟁력에 도움이 되지 않는다는 판단하에 전 세계 제조업이 선진국으로 회귀하는 리쇼어링(re-shoring) 현상이 발생한다면 저소득 국가는 심각한 문제를 격게 될 것이다. 비용 절감을 내새워 서계 경제의 제조업 분야를 이끌었던 저소득 국가들은 이 과정에서 자본을 축적하고 선진 기술을 배우며 소득을 올리는 전형적인 방법으로 발전해왔다.
7.휴먼 클라우드(Human Cloud)의 방식으로 업무를 처리하는 고용주가 점차 늘어나고 있다. 전문직 활동은 구체적 업무와 개별적 프로젝트로 나뉘어져서 세계 곳곳의 잠재 노동자가 등록된 가상의 클라우드에 업로드 된다.
8.전 세계적으로 혁신 육성에 가장 효율적인 정책 환경을 확립한 도시는 뉴욕,런던,헬싱키,바르셀로나,암스테르담이다. (영국의 현신 자선단체인 네스타 Nesta)
9.20세기 후반부에 걸쳐 핵전쟁의 공포는 상호확증파괴(MAD,mutually assured destruction) 체제로 저환되며 균형을 찾아 비교적 안정되었고, 핵 사용을 금기시하자는 암묵적 약속이 생겨났다.
10.불평등의 증가는 단순한 경제현상이 아니라 중요한 사회문제이다. 영국의 사회역학자 리처드 윌킨슨과 게이트 피컷의 저서 "평등이 답이다 (The Spirit Level:Why Greater Equality Makes Societies Stronger) : 불평등한 사회는 더욱 폭력적인 성향을 띠고, 수감자의 수가 더욱 많으며, 정신질환과 비반 수준역시 높고, 기대수명과 신뢰도가 낮다는 데이터를 제시함
11.의사의 경우는 새로운 의료 데이터를 습득하는데 일주일에 160시간이 필요하기 때문에, 진단의 정확성을 높일 수 있는 새로운 통찰력 혹은 심지어 임상적 증거의 핵심마저 현실적으로 모두 검토할 수 없다. 이미 왓슨은 폐암진단능력이 훨씬 정확하다. 90프로대 50프로
12.후성유전학(epigenetics : 환경에 따라 유전자의 발현이 달라지는 과정에 관한 학문)에서는 인간의 삶에서 수면과 영양공급,운동이 가장 중요하다는 절대적 사실을 증명한다.
'책 후기 > 2.프로그래밍 관련' 카테고리의 다른 글
[5분만에 책 한권 읽기] 프로그래머의 리더십 (어느날 갑자기 프로젝트 관리자가 되었다. 뜨~아악!)-정영훈 (0) | 2017.03.10 |
---|---|
[5분만에 책 한권 읽기] 나는 프로그래머다 -2편 (0) | 2017.03.10 |
[5분만에 책 한권 읽기] 읽기 좋은 코드가 좋은 코드다. (The Art of Readable Code) (0) | 2017.03.10 |
[5분만에 책 한권 읽기] C# 코딩의 기술 기본편 - 가와마타 아키라 (0) | 2017.03.10 |
[5분만에 책 한권 읽기] 훌륭한 프로그래머 되는법 ( Becomming a Better Programmer ) - Pete Goodliffe (0) | 2017.03.10 |