Thanks Pompobit! Especially thank you for adding your own branch of the client to Github. Huntercoin is going to be BIG, and I foresee hundreds of developers. I suspect that a lot of the Worldforge people will also join Huntercoin. They had no money to motivate them, but that has changed with cryptocurrencies. There is a lot of the Worldforge 3D media which could be merged into Huntercoin.
The Flushing wallet.dat delay (about 30 seconds) was one easy problem to get rid of. But the following operations all delay Qt:
askfor tx
askfor block
sending getdata
received getdata
AcceptToMemoryPool
If you run the client in Qt Creator after compiling and check the Window->Output Panes->Compile Output window you will see how these operations freeze the client. As the number of players have increased, the client has become unusable again.
The Qt developers recommend injecting
qApp->processEvents()
into loops with long disk operations. You must also
#include
to be able to call qApp. That is what I have been trying to do in main.cpp, but there might be other places in the code with disk operations.
MithrilMan is using threads. He doesn't have a branch on Github and it may not be necessary to go that far. I'm hoping that it will be easier to ungum the knots with processEvents().