# Consistent 100% CPU use of safeCall-queue thread

**URL:** <https://community.openhab.org/t/consistent-100-cpu-use-of-safecall-queue-thread/143792>\
**Category:** Runtime\
**Created:** [January 26, 2023, 1:02am UTC](https://community.openhab.org/t/consistent-100-cpu-use-of-safecall-queue-thread/143792 "2023-01-26T01:02:01Z")\
**Posts on this page:** 1\
**Showing post:** 13

<div class="post-metadata">

**Author:** ![ccutrer](https://community.openhab.org/user_avatar/community.openhab.org/ccutrer/32/73828_2.png) [@ccutrer](https://community.openhab.org/u/ccutrer)\
**Post date:** [April 20, 2023, 2:54pm UTC](https://community.openhab.org/t/consistent-100-cpu-use-of-safecall-queue-thread/143792/13 "2023-04-20T14:54:09Z")

</div>

Yes. Open `openhab-cli console`, and run the following commands:

```auto
config:edit org.openhab.threadpool
config:property-set safeCall 100
config:update

```

You can confirm that it worked in several ways:

In console, you can run these to view all current values:

```auto
config:edit org.openhab.threadpool
config:property-list

```

You can do `cat /var/lib/openhab/config/org/openhab/threadpool.config` (depending on where your installation is located).

Or you can drop the following JRuby script into OPENHAB\_CONF/automation/ruby (when you have the JRuby add-on installed):

```ruby
org.openhab.core.common.ThreadPoolManager.field_reader :pools
tp = org.openhab.core.common.ThreadPoolManager.pools["safeCall"]
logger.info(tp.maximum_pool_size)

```

You can even recover from a blocked up thread pool with this script:

```auto
org.openhab.core.common.ThreadPoolManager.field_reader :pools
tp = org.openhab.core.common.ThreadPoolManager.pools["safeCall"]

def unblock_thread_pool(tp)
  (tp.maximum_pool_size + 1).times do
    tp.submit { sleep 1 }
  end
end

unblock_thread_pool(tp)

```

---

_[View the full topic](https://community.openhab.org/t/consistent-100-cpu-use-of-safecall-queue-thread/143792)._
