cannot invoke setvalue on a background thread code example
Example: java.lang.IllegalStateException: Cannot invoke setValue on a background thread + runblocking()
Use liveData.postValue(value) instead of liveData.value = value.
It is called asynchronous.