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

Side by Side Diff: src/platform-win32.cc

Issue 6070009: Added labelled thread names to help with some debugging activity. Right now,... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 10 years 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
OLDNEW
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. 1 // Copyright 2006-2008 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 1445 matching lines...) Expand 10 before | Expand all | Expand 10 after
1456 explicit PlatformData(HANDLE thread) : thread_(thread) {} 1456 explicit PlatformData(HANDLE thread) : thread_(thread) {}
1457 HANDLE thread_; 1457 HANDLE thread_;
1458 }; 1458 };
1459 1459
1460 1460
1461 // Initialize a Win32 thread object. The thread has an invalid thread 1461 // Initialize a Win32 thread object. The thread has an invalid thread
1462 // handle until it is started. 1462 // handle until it is started.
1463 1463
1464 Thread::Thread() : ThreadHandle(ThreadHandle::INVALID) { 1464 Thread::Thread() : ThreadHandle(ThreadHandle::INVALID) {
1465 data_ = new PlatformData(kNoThread); 1465 data_ = new PlatformData(kNoThread);
1466 #ifdef DEBUG_THREAD_NAMES
1467 SetName("v8:<unknown>");
1468 #endif
1466 } 1469 }
1467 1470
1468 1471
1472 #ifdef DEBUG_THREAD_NAMES
1473 Thread::Thread(const char* name) : ThreadHandle(ThreadHandle::INVALID) {
1474 data_ = new PlatformData(kNoThread);
1475 SetName(name);
1476 }
1477 #endif
1478
1479
1480 #ifdef DEBUG_THREAD_NAMES
1481 void Thread::SetName(const char* name) {
1482 strncpy(name_, name, sizeof(name_));
1483 name_[sizeof(name_)-1] = '\0';
1484 }
1485 #endif
1486
1487
1469 // Close our own handle for the thread. 1488 // Close our own handle for the thread.
1470 Thread::~Thread() { 1489 Thread::~Thread() {
1471 if (data_->thread_ != kNoThread) CloseHandle(data_->thread_); 1490 if (data_->thread_ != kNoThread) CloseHandle(data_->thread_);
1472 delete data_; 1491 delete data_;
1473 } 1492 }
1474 1493
1475 1494
1476 // Create a new thread. It is important to use _beginthreadex() instead of 1495 // Create a new thread. It is important to use _beginthreadex() instead of
1477 // the Win32 function CreateThread(), because the CreateThread() does not 1496 // the Win32 function CreateThread(), because the CreateThread() does not
1478 // initialize thread specific structures in the C runtime library. 1497 // initialize thread specific structures in the C runtime library.
(...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after
1920 1939
1921 // Release the thread handles 1940 // Release the thread handles
1922 CloseHandle(data_->sampler_thread_); 1941 CloseHandle(data_->sampler_thread_);
1923 CloseHandle(data_->profiled_thread_); 1942 CloseHandle(data_->profiled_thread_);
1924 } 1943 }
1925 1944
1926 1945
1927 #endif // ENABLE_LOGGING_AND_PROFILING 1946 #endif // ENABLE_LOGGING_AND_PROFILING
1928 1947
1929 } } // namespace v8::internal 1948 } } // namespace v8::internal
OLDNEW
« src/platform-macos.cc ('K') | « src/platform-solaris.cc ('k') | src/top.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698