728x90

2022/06/19 3

Kotlin Coroutines

Kotlin Coroutines 에 대한 공부를 최근에 많이 하고 있는데 하면서 느껴지는 점은 Thread 간의 Context Switching 에 관한 내용을 Heap 으로 관리할께 라는 느낌이 강하게 들었다. 예전에는 어떻게 Context Switching 을 적은비용으로 한다는 거지 싶었는데, 이제는 대략적으로 이해가 간다. 언제 글을 정리할까 했다가 오늘 천천히 정리해보려고 한다. 기존 Context Switching 의 문제 일단 아주 간단하게 설명하겠다. 어차피 지금 글에서 이 내용이 중요한건 아니니까. 각 Thread 는 Local Stack 등 자신만의 데이터를 가지고 있는데, 다른 Thread 와 Switching 해야 할때 자신의 작업정보를 넘겨주어야 한다. 즉, Process Swit..

Kotlin 2022.06.19

Algebraic Properties And Equations

Algebraic Properties 이 아래 법칙은 모든 연산에 적용되는 것은 아니고, 이것이 적용된다고 증명된 연산에서 사용할 수 있는 법칙 같다고 생각함. 아래 법칙을 규정하는데 사용되는 모든 연산자나, 변수는 특정 연산자를 가르키는 것이아니라, abstract 하다고 생각하면 됨. Commutative Property (Law) $a \diamond b = b \diamond x$ 각 LHS, RHS 의 Variables 의 순서를 바꿔도 동등성이 성립함. 예를 들면 아래 처럼 $b \diamond a = x \diamond b$ Associative Property (Law) $(a \circ b) \diamond c = c \diamond (a \circ b)$ Destributive Prop..

Math 2022.06.19

Go 기초 - 1) Go 의 모듈구조 및 변수

Go Lang 폴더 생성 goproject/hello/extra위와 같은 폴더구조를 지니게 됬다면, hello 폴더 아래있는 모든 .go 파일들은 hello package 에 포함됩니다. 그리고 만약 extra package 에 포함되어 있는 .go 파일들은 extra package 에 포함되게 됩니다. 즉, go 에서는 폴더가 달라지면 package 도 달라집니다. Kotlin 과 Java 와는 약간 다른 구조다. create Go module go mod init goproject/hello go module 에는 NPM 진영의 package.json 과 같이 모듈명과 go-version 및 필요한 정보가 담겨있습니다. Go build go build 위 명령어를 입력하면 go file 들이 buil..

Go 2022.06.19
728x90