Ok thanks, now that I've got OS detection working correctly, I can look into that.
And I've figured out why the thread id's were the same. I was looking at some code for B3d where someone was returning thread id's as int's and just assumed that was correct, but it's not. Thread ID's are, in fact, 64 bit numbers and need to be returned as Long's. When I do that, they're all different, except that multiple instances of FireFox return the same Process ID, which is the desired behaviour.
Getting somewhere, at last, I think.
And I've figured out why the thread id's were the same. I was looking at some code for B3d where someone was returning thread id's as int's and just assumed that was correct, but it's not. Thread ID's are, in fact, 64 bit numbers and need to be returned as Long's. When I do that, they're all different, except that multiple instances of FireFox return the same Process ID, which is the desired behaviour.
Getting somewhere, at last, I think.