In last week’s post, I updated information I had originally written about the useful getline() function. The topic is worthy of further exploration, specifically with the mechanics behind the function’s internal allocation — and reallocation — of memory.
Continue reading
Category Archives: Lesson
The getline() Function – Update
Back in early 2015, I wrote about the getline() function, which is a handy way to read a string. I’ve been informed that my post is the top result for a Google search on getline() — and I have an update!
Continue reading
Chatting with a Thread
A launched thread can be passed an argument, similar to any function. And the thread can return a value, just like any function. But while the thread runs, options for communications are rather limited.
Continue reading
Introduction to Pipes
If you’re like me, you’re probably more familiar with the concept of pipes at the command prompt than in a programming environment. Or maybe you don’t care either way. Regardless, both types of pipe are similar forms of communications, but programming pipes seem specifically weird to me.
Continue reading
The Thread Must Die!
A thread ends in one of three ways: natural causes, an early exit, or sudden death. Yes, it’s exciting, but no more than any aspect of programming.
Continue reading
Leaving a Thread Early
Threads in your code go off and do their own thing, running independently from other parts of the code. Still, the thread is established as a function in your source code file. Like any function, it can leave early.
Continue reading
Multiple Thread Mania
In last week’s Lesson, a program spawned a single thread. This thread runs at the same time as the main program, interrupting text input (if you let it). Such fun! But a multithreaded program isn’t limited to running just two threads. Your code can spawn multiple threads, each running simultaneously.
Continue reading
Here a Thread, There a Thread
Better than forking — especially grandchild forking — is to use threads. These program chunks are more manageable than forking and they don’t recreate the entire program (process). Still, threads aren’t without their quirks. Further, they’re available only to the POSIX standard. Sorry, Windows.
Continue reading
Forking the Grandchildren
I wrote about forking a while back, in June 2015. The fork splits a program into two processes, each capable of handling different tasks simultaneously. The power behind this trick is the fork() function.
Continue reading
From Decimal Value to a String
The challenge for this month’s Exercise is to split a decimal value into its integer and fractional portions. But what if you need the fractional portion as a string?
Continue reading