Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(492)

Side by Side Diff: runtime/bin/timer_impl.dart

Issue 10962012: Use native wrapper fields to store socket ids. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« runtime/bin/socket_impl.dart ('K') | « runtime/bin/stdio.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 class _Timer implements Timer { 5 class _Timer implements Timer {
6 // Set jitter to wake up timer events that would happen in _TIMER_JITTER ms. 6 // Set jitter to wake up timer events that would happen in _TIMER_JITTER ms.
7 static const int _TIMER_JITTER = 0; 7 static const int _TIMER_JITTER = 0;
8 8
9 // Disables the timer. 9 // Disables the timer.
10 static const int _NO_TIMER = -1; 10 static const int _NO_TIMER = -1;
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 // While we are already handling callbacks we will not notify the event 92 // While we are already handling callbacks we will not notify the event
93 // handler. _handleTimeout will call _notifyEventHandler once all pending 93 // handler. _handleTimeout will call _notifyEventHandler once all pending
94 // timers are processed. 94 // timers are processed.
95 return; 95 return;
96 } 96 }
97 97
98 if (_timers.firstEntry() === null) { 98 if (_timers.firstEntry() === null) {
99 // No pending timers: Close the receive port and let the event handler 99 // No pending timers: Close the receive port and let the event handler
100 // know. 100 // know.
101 if (_receivePort !== null) { 101 if (_receivePort !== null) {
102 _EventHandler._sendData(-1, _receivePort, _NO_TIMER); 102 _EventHandler._sendData(null, _receivePort, _NO_TIMER);
103 _shutdownTimerHandler(); 103 _shutdownTimerHandler();
104 } 104 }
105 } else { 105 } else {
106 if (_receivePort === null) { 106 if (_receivePort === null) {
107 // Create a receive port and register a message handler for the timer 107 // Create a receive port and register a message handler for the timer
108 // events. 108 // events.
109 _createTimerHandler(); 109 _createTimerHandler();
110 } 110 }
111 _EventHandler._sendData(-1, 111 _EventHandler._sendData(null,
112 _receivePort, 112 _receivePort,
113 _timers.firstEntry().element._wakeupTime); 113 _timers.firstEntry().element._wakeupTime);
114 } 114 }
115 } 115 }
116 116
117 117
118 // Creates a receive port and registers the timer handler on that 118 // Creates a receive port and registers the timer handler on that
119 // receive port. 119 // receive port.
120 void _createTimerHandler() { 120 void _createTimerHandler() {
121 121
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 _getTimerFactoryClosure() { 191 _getTimerFactoryClosure() {
192 return (int milliSeconds, void callback(Timer timer), bool repeating) { 192 return (int milliSeconds, void callback(Timer timer), bool repeating) {
193 if (repeating) { 193 if (repeating) {
194 return new _Timer.repeating(milliSeconds, callback); 194 return new _Timer.repeating(milliSeconds, callback);
195 } 195 }
196 return new _Timer(milliSeconds, callback); 196 return new _Timer(milliSeconds, callback);
197 }; 197 };
198 } 198 }
199 199
200 200
OLDNEW
« runtime/bin/socket_impl.dart ('K') | « runtime/bin/stdio.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698