<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Asynchronous Programming on Nalar</title>
    <link>https://nalar.dev/tags/asynchronous-programming/</link>
    <description>Recent content in Asynchronous Programming on Nalar</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 15 Sep 2026 00:00:00 +0700</lastBuildDate>
    <atom:link href="https://nalar.dev/tags/asynchronous-programming/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Generation Counters Reject Stale Async Results</title>
      <link>https://nalar.dev/generation-counters-reject-stale-async-results/</link>
      <pubDate>Tue, 15 Sep 2026 00:00:00 +0700</pubDate>
      <guid>https://nalar.dev/generation-counters-reject-stale-async-results/</guid>
      <description>&lt;p&gt;An asynchronous operation can start first and finish last. If every completion writes into the same state slot, completion order becomes state order even when the application intended request order to define authority.&lt;/p&gt;&#xA;&lt;p&gt;This race appears without shared-memory threads. Two network requests, background computations, database queries, or worker messages can overlap through an event loop and return in the opposite order from their initiation. The older result is not necessarily incorrect data. It is stale because a later request has superseded the state transition that originally authorized it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Task Scopes Bind Child Lifetimes to Parent Operations</title>
      <link>https://nalar.dev/task-scopes-bind-child-lifetimes-to-parent-operations/</link>
      <pubDate>Tue, 15 Sep 2026 00:00:00 +0700</pubDate>
      <guid>https://nalar.dev/task-scopes-bind-child-lifetimes-to-parent-operations/</guid>
      <description>&lt;p&gt;An asynchronous function can return while work it started is still running. Once that happens, the caller no longer has a lexical boundary that states when the spawned work finishes, where its failure is observed, or which operation owns its cancellation.&lt;/p&gt;&#xA;&lt;p&gt;Structured concurrency changes that lifetime relation. Child tasks belong to an enclosing scope, and the scope does not complete until its children reach a terminal state according to the runtime&amp;rsquo;s task-group semantics. The central property is not parallel execution. It is that task lifetime follows program structure.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
