How to create and implement interfaces for operations that are only sometimes async
问题 Let's say I have 100s of classes that implement a common interface with a method "calculate". Some of the classes will execute async (e.g. read a file), and other classes implementing the same interface will execute code that is sync (e.g. adding two numbers). What is a good way to code this, for maintenance and for performance? The posts I read so far, always recommend to make async/await methods bubble up to the callers. So if you have one operation that is async, make the caller async,