# Limiting Ray remote functions execution time

**URL:** <https://discuss.ray.io/t/limiting-ray-remote-functions-execution-time/1849>\
**Category:** Ray Clusters\
**Created:** [April 22, 2021, 4:33pm UTC](https://discuss.ray.io/t/limiting-ray-remote-functions-execution-time/1849 "2021-04-22T16:33:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![blublinsky](https://avatars.discourse-cdn.com/v4/letter/b/f05b48/32.png) [@blublinsky](https://discuss.ray.io/u/blublinsky)\
**Post date:** [April 22, 2021, 4:33pm UTC](https://discuss.ray.io/t/limiting-ray-remote-functions-execution-time/1849/1 "2021-04-22T16:33:16Z")

</div>

Is there a way to limit ray’s remote functions execution time? This might be very useful for protecting against “run-away” remote processes.

---

<div class="post-metadata">

**Author:** ![blublinsky](https://avatars.discourse-cdn.com/v4/letter/b/f05b48/32.png) [@blublinsky](https://discuss.ray.io/u/blublinsky)\
**Post date:** [April 25, 2021, 3:37pm UTC](https://discuss.ray.io/t/limiting-ray-remote-functions-execution-time/1849/2 "2021-04-25T15:37:08Z")

</div>

Oh it looks like its effectively supported through tmout on Ray.get. So the following code seems to do the trick:

```
try:
    obj = f.remote(200)
    res = ray.get(obj, timeout=4.0)
except Exception as err:
    print("Caught an exception", err)
    ray.cancel(obj, force=True, recursive=True)
    res = "Execution exception : " + str(err)
```
