OK... The actual purpose, design and implementation of the test is, obviously, up to you...
Though, assuming that:
-- You are running tests not on the live system in teal time but on some dedicated to tests one and thus you have a control over what source files and when are generated; and
-- The actual goal of the test is to check that files are processed correctly;
I still do not see any reason for asynchronous folder monitoring.
Do you *really* need to do a verification for 1000 files? Do you *really* need even 50 of them for regression? If you have 15 unique data equivalence classes, then you may need 50 files (one for data from within data class and one for upper and lower bourder conditions). But if you don't have this number of data equivalence classes, can you tell me why you may need to generate, process and verify more than 10-20 files?
So I still see your test as:
-- Generate or just put some definite number of source files into the source folder. The source folder must be empty. If you cannot guarantee this, then make a list of source files and use it while waiting for/processing modified ones;
-- Check the contents of the target folder until some processed source file appears there;
-- Verify that the file was processed correctly;
-- As you know the number of source files and their names, repeat the above two steps until all source files are processed and verified.
P.S. Note, that TestComplete is basically functional GUI testing tool that mimics the human and uses scripting language for test code. Like human cannot do more than one action at the moment and because scripting languages are usually single-threaded (Python may be an exception, though in TestComplete it is not recommended to use any multi-threading functionality of script language), test actions are done sequentially, but not in parallel.
If you really need multi-threading (and do not really require actions to be done via GUI), you may consider TestLeft tool (https://smartbear.com/product/testleft/overview/). It is based on TestComplete's engine and technology but tests are created using C# and thus can utilize everything provided by .Net platform.