Skip to content
Snippets Groups Projects
Forked from Glasgow Haskell Compiler / GHC
Source project has a limited visibility.
  • Duncan Coutts's avatar
    8023bad4
    waitRead# / waitWrite# do not work for win32-legacy I/O manager · 8023bad4
    Duncan Coutts authored and Marge Bot's avatar Marge Bot committed
    Previously it was unclear that they did not work because the code path
    was shared with other I/O managers (in particular select()).
    
    Following the code carefully shows that what actually happens is that
    the calling thread would block forever: the thread will be put into the
    blocked queue, but no other action is scheduled that will ever result in
    it getting unblocked.
    
    It's better to just fail loudly in case anyone accidentally calls it,
    also it's less confusing code.
    8023bad4
    History
    waitRead# / waitWrite# do not work for win32-legacy I/O manager
    Duncan Coutts authored and Marge Bot's avatar Marge Bot committed
    Previously it was unclear that they did not work because the code path
    was shared with other I/O managers (in particular select()).
    
    Following the code carefully shows that what actually happens is that
    the calling thread would block forever: the thread will be put into the
    blocked queue, but no other action is scheduled that will ever result in
    it getting unblocked.
    
    It's better to just fail loudly in case anyone accidentally calls it,
    also it's less confusing code.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.