Điều gì sẽ là (gần nhất) NET Lõi 1.0 tương đương choNET Lõi 1.0 tương đương cho System.Threading.Thread.CurrentThread.ManagedThreadId
System.Threading.Thread.CurrentThread.ManagedThreadId
?
cập nhật
Như @svick làm rõ System.Threading.Thread.CurrentThread.ManagedThreadId là ở vị trí bình thường của nó. Vui lòng xem ảnh chụp màn hình bên dưới. Câu hỏi được đóng lại. (Vẫn chưa rõ cách thức và khi nào thuộc tính của SystemThread.Thread được khởi tạo thành giá trị không null (mặc định (System.Threading.Thread) luôn luôn == null?) Nhưng đây không phải là chủ đề của điều này chủ đề.)
cập nhật 2
trên thực tế System.Threading.Thread.CurrentThread.ManagedThreadId có sẵn trong dự án 1.0 ứng dụng .NET Core, mà đã được định nghĩa trong nó project.json:
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50"
}
và mất tích trong dự án .NET Lõi 1,0 lớp thư viện, trong đó đã quy định tại project.json của nó:
"frameworks": {
"netstandard1.6": {
"imports": "dnxcore50"
}
Làm thế nào để làm cho System.Threading.Thread.CurrentThread .ManagedThreadId có sẵn trong dự án thư viện lớp .NET Core 1.0?
gì bạn đang tìm kiếm là nguồn gốc của việc lắp ráp tham khảo (đó là lý do tại sao nó ở thư mục 'ref' và không phải trong' src'). [Việc triển khai thực tế là trong CoreCLR.] (Https://github.com/dotnet/coreclr/blob/release/1.0.0/src/mscorlib/src/System/Threading/Thread.cs#L751-L758) – svick
@ svick: Cảm ơn bạn, tôi thấy nó ngay bây giờ - ManagedThreadId được thực hiện bằng cách sử dụng chế độ hacking bản địa - đây là một lời nhận xét được trích dẫn từ mã thread.cs: "_Sự thực thi cơ bản của Thread là tất cả các native. Các trường sau đây sẽ không bao giờ được sử dụng trong mã C# Họ đang ở đây để xác định không gian thích hợp để các đối tượng thread có thể được phân bổ. KHÔNG THAY ĐỔI BẠN KHÔNG CHỈNH SỬA MODBY ThreadBaseObject trong vm \ object.h_ " – ShamilS