inflearn logo
Khóa học

Khóa học

Chia sẻ kiến thức

Bài viết của euni

euni euni

@enni

Học viên
-
Đánh giá khóa học
-
Đánh giá khóa học
-

Bài viết 9

Hỏi & Đáp

코틀린으로 해당 C# 예제를 비슷하게 만들어봤는데, 제가 잘못 작성한 걸까요?

뒤늦게 이해했습니다! while문 내에서 Thread.sleep()을 호출하는 바람에 context switching이 발생해서 cache가 flush되어 제가 원하는대로 동작하지 않는 것이었군요.. 저처럼 실수하는 분이 계실 것 같아서 글은 그대로 두겠습니다!! 감사합니다

Lượt thích
1
Số bình luận
4
Lượt xem
758

Hỏi & Đáp

코틀린으로 해당 C# 예제를 비슷하게 만들어봤는데, 제가 잘못 작성한 걸까요?

글이 이상하게 올라갔네요 ㅜ.. 지식 공유자님께서 작성해주신 C# 코드 예제를 코틀린으로 비슷하게 작성해서 시도해보았지만 같은 상황이 재현되지 않습니다. 제가 지식 공유자님의 코드를 잘못 이해하고 작성한 것인지, 아니면 JVM의 의도치 않은 최적화 때문에 의도와 다르게 동작하는 것인지 궁금합니다. 위에 다시 올렸습니다!!

Lượt thích
1
Số bình luận
4
Lượt xem
758

Hỏi & Đáp

코틀린으로 해당 C# 예제를 비슷하게 만들어봤는데, 제가 잘못 작성한 걸까요?

fun main (args: Array ) { Example().startUp() } class Example() { private var shouldStop = false fun startUp() { println("process start") val thread = Thread(Runnable { doWork() }) thread.start() Thread.sleep(1000) shouldStop = true thread.join() println("process end") } private fun doWork() { while (!shouldStop) { println("doWork..") Thread.sleep(1000) } } }

Lượt thích
1
Số bình luận
4
Lượt xem
758

Hỏi & Đáp

orElseThrow()

지나가다가 답변이 없길래 제 의견을 남겨보자면 if ( member.getId() != null ) { return member id; } else { throw new MemberNotFoundException; } 보다는 member.getId().orElseThrow(() -> new MemberNotFoundException); 이 여러모로 낫지 않을까요 Optional의 기능 자체가 모두 하드코딩으로 해결 가능한 부분이긴 하지만 가독성도 좋지 않고 코드도 길어지니까요 "꼭 필요한가?"라는 논리에 따르면 Optional은 orElseThrow뿐 아니라 다른 모든 메서드도 꼭 필요한 건 아니라고 봅니다. 다만 더 간결하고 편하죠, 그리고 좀 더 고수같구요 ㅋㅋ

Lượt thích
1
Số bình luận
2
Lượt xem
1112