Eventhandlers called asynchronous?

Hi. New to appdaemon, just started my first app. Used to be a programmer in an earlier life…
I have a question, could not find it before, sorry if re-post.

Are events asynchronous?

By that I mean something like this:

handler_listening_to_state:
<looping>

handler_listening_to_event:
called, would mess with the same data

Do I need to disable handler_listening_to_event or will it be executed afterward anyway in the same thread or can it be invoked from another thread?

I guess a better way of putting it perhaps would be, do I need to be thread safe within my class?
(Python is also kind of new to me) My mind is kind of C-centric, old habits die hard.

Thank you and have a nice weekend.