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 31 32 33 34 35 36 37 38 39 40 41 42 43 |
// Tortuga class TortugaThread : Thread() { override fun run() { var i = 0 println("Comienza la Tortuga.") while (i < 5) { try { sleep(5000) println("Tortuga.") } catch (ex: InterruptedException) { } i++ } println("Termina la Tortuga.") } } // Liebre class LiebreThread : Runnable { override fun run() { var i = 0 println("Comienza la Liebre.") while (i < 5) { try { Thread.sleep(2000) println("Liebre.") } catch (ex: InterruptedException) { } i++ } println("Termina la Liebre.") } } // Carrera fun main() { val tortuga = TortugaThread() val liebre = Thread(LiebreThread()) tortuga.start() liebre.start() tortuga.join() liebre.join() } |