About the struct, I haven't done it because I found it weird to have a struct with 2 members living on the IO thread and one member living on the extension thread... Doesn't it lead us to problems?