We have not been able to reproduce this so far. Does it still occur with the latest release?
For other readers, this is the latest statement from our developers:
All Rebex FileTransferClient’s Async methods are currently implemented as blocking synchronous methods that are called via an equivalent of Task.Run
. Therefore, if you call the ConnectAsync
method 100 times, it will attempt to start 100 asynchronous operations in 100 asynchronous threads. Which means it doesn’t really scale (and starves the process of threads) when used this way.
We plan to eventually upgrade all the Async methods to be truly asynchronous, which will solve the issue and make FileTransferClient extremely scalable. Until then, the only solution is to take this behavior into account and design your application accordingly (by limiting the maximum number of concurrent Rebex FileTransferClient operations, for example).
On a side note, I noticed that your e-mail is not currently associated with any Rebex contract. If you already purchased a license, please let us know so we can update our database. Thanks!