- 
                Notifications
    
You must be signed in to change notification settings  - Fork 13.9k
 
Add Future and task system to the standard library #51263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
        
          
                src/liballoc/task.rs
              
                Outdated
          
        
      There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
wake_local
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! I quite like the way the LocalWaker pieces have worked out.
        
          
                src/liballoc/task.rs
              
                Outdated
          
        
      There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could this be a From coercion? Or do you prefer to keep it explicit?
The fact that we can't add it as an inherent constructor is a shame. But we can iterate on this later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LocalWaker isn't defined in liballoc, so we can't add a From<impl Wake + 'static> for LocalWaker here. In any case, I think it might be a bit too tricky for users to figure out that wake_local won't be called via the From impl.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
| 
           @bors: r+  | 
    
| 
           📌 Commit 83b69db has been approved by   | 
    
| 
           ⌛ Testing commit 83b69db209f461c1bdd2e3631838e6af295d1b01 with merge 37bd8b0c04855cd0d082c2d1899763b4531a748b...  | 
    
| 
           💔 Test failed - status-travis  | 
    
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
    
      
        1 similar comment
      
    
  
    
      
        
              This comment has been minimized.
        
        
      
    
  This comment has been minimized.
           | 
    
| 
           TIL   | 
    
| 
           📌 Commit a6055c8 has been approved by   | 
    
Add Future and task system to the standard library This adds preliminary versions of the `std::future` and `std::task` modules in order to unblock development of async/await (#50547). These shouldn't be considered as final forms of these libraries-- design questions about the libraries should be left on rust-lang/rfcs#2418. Once that RFC (or a successor) is merged, these APIs will be adjusted as necessary. r? @aturon
| 
           ☀️ Test successful - status-appveyor, status-travis  | 
    
This adds preliminary versions of the
std::futureandstd::taskmodules in order to unblock development of async/await (#50547). These shouldn't be considered as final forms of these libraries-- design questions about the libraries should be left on rust-lang/rfcs#2418. Once that RFC (or a successor) is merged, these APIs will be adjusted as necessary.r? @aturon