일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 최단경로
- 프로그래머스
- MST
- db
- OrderBy
- union find
- 배포
- django
- AWS
- JOIN
- Database
- Baekjoon
- EC2
- 알고리즘
- SQL
- 백준
- 구현
- 피로그래밍
- 누적합
- Pirogramming
- 다익스트라
- GROUPBY
- 프림
- SQL코딩테스트
- Java
- 크루스칼
- 자바
- 그래프 탐색
- 코딩테스트
- BFS
- Today
- Total
목록프로그래밍 언어/GO (2)
NullNull

프로세스, 스레드, Go routine 프로그램 : 프로세스의 명령어와 사용자 데이터를 초기화하는데 사용할 명령어와 데이터를 담은 파일 프로세스 : 명령어, 사용자 데이터, 시스템 영역, 실행 과정에 수집한 다양한 종류의 리소스로 구성된 독립적인 실행 단위 스레드 : 프로그램이나 프로세스보다 좀 더 가볍고 작은 실행 단위. 프로세스에 의해 생성되며 독립적인 제어 흐름과 스택을 가짐 Go routine : Go 프로그램에서 동시에 실행할 수 있는 최소 단위. OS가 아닌 프로그램에서 Time-Sharing이 이루어짐 프로세스나 스레드를 OS에 요청하지 않고, 자체적으로 해결함. 프로세스, 스레드의 Context Switching 보다 비용적으로 우수함 프로세스나 스레드에 종속되지 않으므로, 1개의 스레드에..

defer 함수나 코드의 실행을 가장 마지막까지 미룰 수 있음 defer 키워드가 있는 함수나 코드는 실행이 바로 되지 않고 그 함수의 실행이 끝난 후 LIFO 방식으로 실행됨 package main import "fmt" func d1() { fmt.Println("d1 function") for i := 3; i > 0; i-- { defer fmt.Print(i, " ") } } func d2() { fmt.Println("d2 function") for i := 3; i > 0; i-- { defer func() { fmt.Print(i, " ") }() } } func d3() { fmt.Println("d3 function") for i := 3; i > 0; i-- { defer func(n..