| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef BASE_MESSAGE_LOOP_H_ | 5 #ifndef BASE_MESSAGE_LOOP_H_ |
| 6 #define BASE_MESSAGE_LOOP_H_ | 6 #define BASE_MESSAGE_LOOP_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <queue> | 9 #include <queue> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 // Counter for location where the Closure was posted from. | 423 // Counter for location where the Closure was posted from. |
| 424 tracked_objects::Births* post_births; | 424 tracked_objects::Births* post_births; |
| 425 #endif // defined(TRACK_ALL_TASK_OBJECTS) | 425 #endif // defined(TRACK_ALL_TASK_OBJECTS) |
| 426 | 426 |
| 427 // Time this PendingTask was posted. | 427 // Time this PendingTask was posted. |
| 428 base::TimeTicks time_posted; | 428 base::TimeTicks time_posted; |
| 429 | 429 |
| 430 // The time when the task should be run. | 430 // The time when the task should be run. |
| 431 base::TimeTicks delayed_run_time; | 431 base::TimeTicks delayed_run_time; |
| 432 | 432 |
| 433 // The site this PendingTask was posted from. |
| 434 tracked_objects::Location posted_from; |
| 435 |
| 433 // Secondary sort key for run time. | 436 // Secondary sort key for run time. |
| 434 int sequence_num; | 437 int sequence_num; |
| 435 | 438 |
| 436 // OK to dispatch from a nested loop. | 439 // OK to dispatch from a nested loop. |
| 437 bool nestable; | 440 bool nestable; |
| 438 | |
| 439 // The site this PendingTask was posted from. | |
| 440 const void* birth_program_counter; | |
| 441 }; | 441 }; |
| 442 | 442 |
| 443 class TaskQueue : public std::queue<PendingTask> { | 443 class TaskQueue : public std::queue<PendingTask> { |
| 444 public: | 444 public: |
| 445 void Swap(TaskQueue* queue) { | 445 void Swap(TaskQueue* queue) { |
| 446 c.swap(queue->c); // Calls std::deque::swap | 446 c.swap(queue->c); // Calls std::deque::swap |
| 447 } | 447 } |
| 448 }; | 448 }; |
| 449 | 449 |
| 450 typedef std::priority_queue<PendingTask> DelayedTaskQueue; | 450 typedef std::priority_queue<PendingTask> DelayedTaskQueue; |
| (...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 706 #endif // defined(OS_POSIX) | 706 #endif // defined(OS_POSIX) |
| 707 }; | 707 }; |
| 708 | 708 |
| 709 // Do not add any member variables to MessageLoopForIO! This is important b/c | 709 // Do not add any member variables to MessageLoopForIO! This is important b/c |
| 710 // MessageLoopForIO is often allocated via MessageLoop(TYPE_IO). Any extra | 710 // MessageLoopForIO is often allocated via MessageLoop(TYPE_IO). Any extra |
| 711 // data that you need should be stored on the MessageLoop's pump_ instance. | 711 // data that you need should be stored on the MessageLoop's pump_ instance. |
| 712 COMPILE_ASSERT(sizeof(MessageLoop) == sizeof(MessageLoopForIO), | 712 COMPILE_ASSERT(sizeof(MessageLoop) == sizeof(MessageLoopForIO), |
| 713 MessageLoopForIO_should_not_have_extra_member_variables); | 713 MessageLoopForIO_should_not_have_extra_member_variables); |
| 714 | 714 |
| 715 #endif // BASE_MESSAGE_LOOP_H_ | 715 #endif // BASE_MESSAGE_LOOP_H_ |
| OLD | NEW |