Missing one thing from the method signature if you're trying to make this an extension method of Strings. I would prepend "string text" with "this string text" for the first parameter. This is all synchronous.
Synchronous means "at the same time". Thus asynchronous is "not at the same time". Whilst no function will return a result at the same time as being called, to the calling code it appears to do so, as the latter's execution stops whilst the function runs.
Thus such functions can be seen as synchronous. If a function allows the calling code to continue and then returns a result later, it's no longer synchronous; it's asynchronous. By allowing the calling code to continue, it can be getting on with other things whilst the function is running; thus the two are parallel.
It's just not a common perception of parallel as not just being "side by side" but at the same time as well. It doesn't mean all operations happen at the same time, it just means that we know precisely in which order the operations will happen.
Think about it as the end of one operation is synchronized with the beginning of the next operation, or that operations are synchronized to the same timeline.
As you say, the word synchronous can outside of software have the meaning of "running in parallel", but that would only be in the sense of running simultaneous in lockstep, i. But in software parallelism is not deterministic - the processes or threads are not synchronized to each other or to a shared timeline, so execution order across threads is not deterministic.
I suppose that it would be possible to have deterministic parallelism in real-time systems, but I don't know anything about that.
A synchronous function is not necessary deterministic. Deterministic means that given the same inputs, you will always get the same output. You could, for instance have a synchronous random function which would not be synchronous, because it can return different output given the same input.
I agree with the other things you said, I just wanted to point out the subtlety of the word deterministic. In this case functionB is asynchronous, yet we can know when functionC will be called. This is how many UI toolkits work where there is a single UI thread.Writing to file in a thread safe manner.
Ask Question. Unless you have a good reason for write to the file asynchronously, this is wasted effort.
If you lock properly, this will work fine. MVC web app writing to file in a threadsafe way. Related. 1.
Thread Safe Server Querier. 1. In computer science, asynchronous I/O (also non-sequential I/O) is a form of input/output processing that permits other processing to continue before the transmission has finished.
Input and output (I/O) operations on a computer can be extremely slow compared to the processing of data. Jan 23, · For information on using Async for file access in Metro style apps, Note that the async modifier is in the definition of methods that use the await statement.
static void Main(string  args) The following example demonstrates parallel processing by writing 10 text files. For each file, the WriteAsync method returns a task. File copy, in series or parallel?
Ask Question. You want to copy files one by one, but with all I/O done asynchronously. The app will then issue a write request and, again, the OS will complete it on its own schedule and notify the app when it's done.
In practice this will mean that the app will have several outstanding read requests. Mar 29, · @JasonFoglia I didn't say that it wouldn't write to the file, I said it would do so synchronously, and the question specifically specified that they wanted to do so asynchronously.
IO is in fact inherently asynchronous, not synchronous. Any synchronous IO operations you have involve an inherently asynchronous operation and some work done to explicitly sleep the thread until that .
LGWR issues/queues write call to OS to write to disk, refreshes the logical scn and asynchronously posts LMS to broadcast this SCN (BOC) from the local instance to other instances in cluster. While I/O subsystem completes the write to disk, LGWR itself starts waiting on ‘ Log File Parallel Write ‘.