directly analogous to threads
I don't think it makes sense to say futures are analogous to threads by the standard definition of the word [1]. threading as implemented in C has primitives of "fork" and "join", whereas Futures are a different metaphor altogether, one analogous to Promises in JS.