fix: download counts don't match given param

before changes:use predownloadcounts to control download threads
but the preDownloadCounts+=1 action when thread.start() is called
in other word,it's added in run() scope,that's the problem,when
checking for num of threads,because some inited threads haven't
been started,so program will still init new threads,
That will Cause over download!!!!

so,change to do the preDownloadCounts+=1 in the init function
fix it