fN
fN = NumberOfThreads();
fNumberOfThreads = fN;
new FilterThread(this, 0, fN, !async);
while (acquire_sem_etc(fWaitForThreads, fN, 0, 0) == B_INTERRUPTED);
ASSERT(fNumberOfThreads == fN);
release_sem_etc(fWaitForThreads, fN, 0);
for (int32 i = fI + 1; i < fN; i ++) {
new FilterThread(fFilter, i, fN);
fFilter->Run(fI, fN);
fN(0),
int32 fN; // the number of used filter threads
int32 fN;