December 31st, 2021

2021 year-end link clearance

It’s the annual year-end link clearance. You’ve waited a whole year for this. It probably wasn’t worth it.

Topics
Other

Author

Raymond has been involved in the evolution of Windows for more than 30 years. In 2003, he began a Web site known as The Old New Thing which has grown in popularity far beyond his wildest imagination, a development which still gives him the heebie-jeebies. The Web site spawned a book, coincidentally also titled The Old New Thing (Addison Wesley 2007). He occasionally appears on the Windows Dev Docs Twitter account to tell stories which convey no useful information.

8 comments

Discussion is closed. Login to edit/delete existing comments.

Newest
Newest
Popular
Oldest
  • Azarien

    Ah, can’t wait for this year’s “Seattle Symphony subscription season at a glance” post 🙂

  • Richard Cox

    As there is no admin contact link for devblogs, and I noticed this here first, this seems the least worse place to report that there appears to be a server side caching problem with the RSS feed.

    Go to https://devblogs.microsoft.com/oldnewthing/ in an incognito/private browsing session. Scroll down and click on the RSS link. And the returned RSS was built 22 Dec 2021, with the latest item being "How do I programmatically reposition monitors in a multiple-monitor...

    Read more
    • Brian Beck

      Thank you! I had noticed that my RSS reader was getting Raymond’s posts in batches but hadn’t quite figured out why.

  • 紅樓鍮

    I’m curious as to why Unity would need a “socket polling thread”; can’t other threads do the polling themselves? Maybe they have to perform garbage collection while they wait for the socket to become available? If that’s the case, they could use overlapped I/O with a signaling event.

    • Kevin Norris

      I believe they were using the word "polling" in the Unix/Linux sense of the term (i.e. referring to epoll(2), which is mostly just a better, but less portable, variant of select(2)). This family of syscalls is roughly synonymous with WaitForMultipleObjects, which ironically is the exact opposite of what most people think of when you say "polling." I base this belief on the fact that the blog post repeatedly refers to the winsock select() function, which...

      Read more
      • 紅樓鍮

        I’m assuming that the threads which post sockets to the polling thread do, possibly after doing other things, actively care about when the socket becomes ready (otherwise the polling thread has no way to post the selecting results back). If that’s the case, then wherever in the code they receive a selecting result, they should be able to instead check the status of an event.

      • Kevin Norris · Edited

        It may be the case that a single thread cares about the status of multiple sockets, or that a single socket is of interest to more than one thread. Or it may be the case that they are using a thread pool, and don't want worker threads hanging around waiting on sockets when they could be processing other work objects.

        (EDIT: Rereading it, they *are* using a thread pool. So that's probably the reason.)

        More generally: There's...

        Read more
  • Peter Cooper Jr. · Edited

    On the contrary, it was definitely worth it, as usual. Thank you!

Feedback