Kotlin में थ्रेड (Thread) और कोरूटीन (Coroutine) में क्या अंतर है?
सभी को नमस्ते! मैंने Kotlin और कोरूटीन (Coroutine) सीखना शुरू किया है, लेकिन मैं सामान्य थ्रेड (Thread) और कोरूटीन (Coroutine) के बीच मूलभूत अंतर को समझ नहीं पा रहा हूँ।
ऐसा लगता है कि दोनों ही कोड को समानांतर (parallel) या असिंक्रोनस (asynchronously) चलाने की अनुमति देते हैं। मैंने दस्तावेज़ीकरण पढ़ा, लेकिन वहाँ जटिल तरीके से लिखा है। उदाहरण के लिए, मैंने थ्रेड (Thread) के साथ एक सरल उदाहरण लिखा:
```kotlin
fun main() {
println("Main starts: ${Thread.currentThread().name}")
val thread = Thread {
println("Thread working: ${Thread.currentThread().name}")
Thread.sleep(1000)
println("Thread done")
}
thread.start()
println("Main continues: ${Thread.currentThread().name}")
thread.join()
println("Main ends")
}
```
और कोरूटीन (Coroutine) पर समतुल्य:
```kotlin
fun main() = runBlocking {
print