fn.with_notify.html 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta name="generator" content="rustdoc">
  7. <meta name="description" content="API documentation for the Rust `with_notify` fn in crate `futures`.">
  8. <meta name="keywords" content="rust, rustlang, rust-lang, with_notify">
  9. <title>futures::executor::with_notify - Rust</title>
  10. <link rel="stylesheet" type="text/css" href="../../normalize.css">
  11. <link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle">
  12. <link rel="stylesheet" type="text/css" href="../../dark.css">
  13. <link rel="stylesheet" type="text/css" href="../../main.css" id="themeStyle">
  14. <script src="../../storage.js"></script>
  15. </head>
  16. <body class="rustdoc fn">
  17. <!--[if lte IE 8]>
  18. <div class="warning">
  19. This old browser is unsupported and will most likely display funky
  20. things.
  21. </div>
  22. <![endif]-->
  23. <nav class="sidebar">
  24. <div class="sidebar-menu">&#9776;</div>
  25. <p class='location'><a href='../index.html'>futures</a>::<wbr><a href='index.html'>executor</a></p><script>window.sidebarCurrent = {name: 'with_notify', ty: 'fn', relpath: ''};</script><script defer src="sidebar-items.js"></script>
  26. </nav>
  27. <div class="theme-picker">
  28. <button id="theme-picker" aria-label="Pick another theme!">
  29. <img src="../../brush.svg" width="18" alt="Pick another theme!">
  30. </button>
  31. <div id="theme-choices"></div>
  32. </div>
  33. <script src="../../theme.js"></script>
  34. <nav class="sub">
  35. <form class="search-form js-only">
  36. <div class="search-container">
  37. <input class="search-input" name="search"
  38. autocomplete="off"
  39. placeholder="Click or press ‘S’ to search, ‘?’ for more options…"
  40. type="search">
  41. </div>
  42. </form>
  43. </nav>
  44. <section id='main' class="content">
  45. <h1 class='fqn'><span class='in-band'>Function <a href='../index.html'>futures</a>::<wbr><a href='index.html'>executor</a>::<wbr><a class="fn" href=''>with_notify</a></span><span class='out-of-band'><span id='render-detail'>
  46. <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">
  47. [<span class='inner'>&#x2212;</span>]
  48. </a>
  49. </span><a class='srclink' href='../../src/futures/task_impl/mod.rs.html#467-482' title='goto source code'>[src]</a></span></h1>
  50. <pre class='rust fn'>pub fn with_notify&lt;F, T, R&gt;(notify: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>T, id: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, f: F) -&gt; R <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>() -&gt; R,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href="../../futures/executor/struct.NotifyHandle.html" title="struct futures::executor::NotifyHandle">NotifyHandle</a>&gt;,&nbsp;</span></pre><div class='docblock'><p>Sets the <code>NotifyHandle</code> of the current task for the duration of the provided
  51. closure.</p>
  52. <p>This function takes a type that can be converted into a notify handle,
  53. <code>notify</code> and <code>id</code>, and a closure <code>f</code>. The closure <code>f</code> will be executed such
  54. that calls to <code>task::current()</code> will store a reference to the notify handle
  55. provided, not the one previously in the environment.</p>
  56. <p>Note that calls to <code>task::current()</code> in the closure provided <em>will not</em> be
  57. equivalent to <code>task::current()</code> before this method is called. The two tasks
  58. returned will notify different handles, and the task handles pulled out
  59. during the duration of this closure will not notify the previous task. It's
  60. recommended that you call <code>task::current()</code> in some capacity before calling
  61. this function to ensure that calls to <code>task::current()</code> inside of this
  62. closure can transitively wake up the outer task.</p>
  63. <h1 id="panics" class="section-header"><a href="#panics">Panics</a></h1>
  64. <p>This function will panic if it is called outside the context of a future's
  65. task. This is only valid to call once you've already entered a future via
  66. <code>Spawn::poll_*</code> functions.</p>
  67. </div></section>
  68. <section id='search' class="content hidden"></section>
  69. <section class="footer"></section>
  70. <aside id="help" class="hidden">
  71. <div>
  72. <h1 class="hidden">Help</h1>
  73. <div class="shortcuts">
  74. <h2>Keyboard Shortcuts</h2>
  75. <dl>
  76. <dt><kbd>?</kbd></dt>
  77. <dd>Show this help dialog</dd>
  78. <dt><kbd>S</kbd></dt>
  79. <dd>Focus the search field</dd>
  80. <dt><kbd>↑</kbd></dt>
  81. <dd>Move up in search results</dd>
  82. <dt><kbd>↓</kbd></dt>
  83. <dd>Move down in search results</dd>
  84. <dt><kbd>↹</kbd></dt>
  85. <dd>Switch tab</dd>
  86. <dt><kbd>&#9166;</kbd></dt>
  87. <dd>Go to active search result</dd>
  88. <dt><kbd>+</kbd></dt>
  89. <dd>Expand all sections</dd>
  90. <dt><kbd>-</kbd></dt>
  91. <dd>Collapse all sections</dd>
  92. </dl>
  93. </div>
  94. <div class="infos">
  95. <h2>Search Tricks</h2>
  96. <p>
  97. Prefix searches with a type followed by a colon (e.g.
  98. <code>fn:</code>) to restrict the search to a given type.
  99. </p>
  100. <p>
  101. Accepted types are: <code>fn</code>, <code>mod</code>,
  102. <code>struct</code>, <code>enum</code>,
  103. <code>trait</code>, <code>type</code>, <code>macro</code>,
  104. and <code>const</code>.
  105. </p>
  106. <p>
  107. Search functions by type signature (e.g.
  108. <code>vec -> usize</code> or <code>* -> vec</code>)
  109. </p>
  110. </div>
  111. </div>
  112. </aside>
  113. <script>
  114. window.rootPath = "../../";
  115. window.currentCrate = "futures";
  116. </script>
  117. <script src="../../main.js"></script>
  118. <script defer src="../../search-index.js"></script>
  119. </body>
  120. </html>