# How to exit from loop on keyboard button pressing?

**URL:** <https://discourse.julialang.org/t/how-to-exit-from-loop-on-keyboard-button-pressing/113808>\
**Category:** General Usage\
**Created:** [May 3, 2024, 5:59pm UTC](https://discourse.julialang.org/t/how-to-exit-from-loop-on-keyboard-button-pressing/113808 "2024-05-03T17:59:27Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![andrey2185](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andrey2185/32/9889_2.png) [@andrey2185](https://discourse.julialang.org/u/andrey2185)\
**Post date:** [May 3, 2024, 5:59pm UTC](https://discourse.julialang.org/t/how-to-exit-from-loop-on-keyboard-button-pressing/113808/1 "2024-05-03T17:59:27Z")

</div>

Hello, how to exit from loop on keyboard button pressing? I see two ways: catch InterruptException or this:

```julia
function main_loop()
	println("Press 'Enter' to stop.")
	task = Threads.@spawn readline(stdin)
    while true
        if istaskdone(task)
            println("stopped.")
            return
        end
        println("working...")
        sleep(1)
    end
end

task = errormonitor(@async(main_loop()))

wait(task)

```

maybe something else?
