foreground / background


Background


- background 실행 명령을 하려면 & 를 명령행 마지막에 붙인다. 

$ javac test.java &



- background 에서 실행되고 있는 프로세스들을 보려면 jobs 를 명령한다

$ jobs

[1]    +Running    javac test.java


- background에서 실행 중인 프로세스를 foreground로 되돌리려면 fg %<작업식별자>를 입력한다. 

$ fg %1

작업 식별자란 jobs 의 수행 결과 나온 작업 순번이라고 생각하면 쉽다. 





Foreground


- foreground 에서 실행중인 작업을 중단시키려면 컨+z를 누른다. 

- 이 방법은 프로그램을 잠시 멈추게 할 때도 사용할 수 있다. 


- 컨+z로 멈춘 작업을 백그라운드에서 실행하게 하려면 bg를 명령행에 넣는다. 

$ bg



- 작업을 중지하려면 jobs의 결과로 나오는 작업식별자로 프로세스를 중지할 수 있다. 

$ kill %1



추신. 

백그라운드에서 작업중이던 내용이 데이터를 입력받아야 할 경우 반드시 포어그라운드로 끌어올린 후 입력을 마쳐야 한다. 그렇지 않으면 진행이 되지 않는다. 

'Unix Power Tools' 카테고리의 다른 글

UPT 15장 와일드 카드- 보다는 grep만.  (0) 2016.04.11
pushd <-> popd  (0) 2016.04.06
Posted by 썬,더 호글
,

https://dogfeet.github.io/articles/2012/git-merge-rebase.html


지금까지는 아예 로컬 데브를 최신으로 갱신하고 직접 데브에 머지해서 올리는 방법으로 풀리퀘스트를 제대로 써 본 일이 없다. 그런데 풀리퀘스트를 사용하니까 이렇게 충돌이 나는 상황을 개선할 방법이 마땅치가 않다. 

Posted by 썬,더 호글
,

holder pattern in java

배운 것 2016. 3. 15. 18:01

홀더 패턴이라는 것을 처음 이용해보았다. 거의 받아쓰기 하듯이 짝코딩을 했는데, 하고 나서 찬찬히 보고 문서를 살펴보니 좀 이해할 수 있게 되었다. 그리고 이건 좋지 않다. 키보드를 치면 화면이 너무 많이 흔들린다. 


홀더 패턴이라고 검색하면 잘 나오지 않고, Initialization on demand holder idion이라고 정의되어 있는 것 같다. 


간단히 훑어봤을 때 장점은 lazy loading이다. 형식은 아래 문서들을 참고하면 쉽게 이해할 수 있다. A클래스에 대한 getInstance()함수를 수행하면 A클래스의 싱글톤 객체를 리턴한다. 그렇지만 내부를 살펴보면 A클래스의 Inner class인 B클래스의 필드를 리턴하는 것으로부터 A클래스의 싱글톤 객체를 가져다 쓸 수 있게 되는 것이다. 




정리하자면 


public class A {

public A getInstance (){ return B._instance();}

private static class B{

private A _instance = new A();

}

}



- 검색해서 이해하기 좋았던 문서 2개 

1. http://gampol.tistory.com/entry/Double-checked-locking%EA%B3%BC-Singleton-%ED%8C%A8%ED%84%B4

2. https://en.wikipedia.org/wiki/Initialization-on-demand_holder_idiom



'배운 것' 카테고리의 다른 글

base64 vs base64url safe 차이  (2) 2016.04.03
perl로 날짜 비교 하기  (0) 2016.03.28
[linux command ] which, whereis  (0) 2016.03.04
[linux command] mkdir -p -m  (0) 2016.03.04
[linux command] cut  (0) 2016.03.04
Posted by 썬,더 호글
,