This kind of process can be very small, if it is dedicated to "watching", and then launching a delivery as an Execute Delivery.
Here is a screenshot of "jvisualvm" (available in most JDKs), showing the memory used when lauching 1, 3, or 15 instances of the fileWaitForever process.
As you can see, there is no much difference : the peeks vary from about 25Mb to 30Mb.
Edit : this measure has been done without "input data", just to show the small impact on memory of those waiting action. In real life, if many FileWait actions receive many files at the same time, it is important to carry out some load testing and memory analysis.