Age | Commit message (Collapse) | Author |
|
|
|
|
|
This may not all work yet, but it all compiles!
|
|
That was weird. It seems to be working now.
|
|
|
|
Still to go: bootstrapping reading the initial header, saving the
header, growing streams as we write?
|
|
|
|
If so, this will fix the issue where streams randomly truncate when
accessed by multiple threads.
|
|
|
|
|
|
|
|
|
|
|
|
replace that with just an array, no problem. It's many, many, many times
faster while streams are growing, and it should be constant time, not linear
like it was before.
It also handles myriad files in excess of 2gb correctly now, at least, it
seems to just fine :)
|
|
|
|
streams accessing the same blocks at the same time. Right now it's safe, but
a little strange, since both streams work from seperate buffers. Maybe that's
ok, but it still needs some more investigation.
I want to remove the BitString stuff entirely, it turns out it's the slowest
part, which, upon actually looking at the code is completely obvious. This
change shouldn't change the API at all, just make adding blocks to streams much,
much faster.
|
|
doesn't yet normalize the endian-ness, and I guess at this point to maintain
compatibility I'll have to make it a little endian format. I would still like
to add better thread-safety to it, but that's about it.
|