![]() CATEGORIES: BiologyChemistryConstructionCultureEcologyEconomyElectronicsFinanceGeographyHistoryInformaticsLawMathematicsMechanicsMedicineOtherPedagogyPhilosophyPhysicsPolicyPsychologySociologySportTourism |
Public and private keysprimitives, overflows and, 115 prioritizing threads, 684, 754 by application, 687 classes for, 685 High priority, 685 Idle priority class, 685 Idle priority level, 687 importance of, 688 mapping priority levels, 686 priority boosting, 774 process priority class, 686 raising and lowering priority, 687 Realtime class, 685 relative priority classes, 685 Time-Critical priority level, 687 for Windows Store apps, 687 zero page thread, 684, 686 PrioritizingTaskScheduler, 713 priority inversion, 756 thread, 679 private assemblies, 67 strongly named, 79 private fields, 168, 228, 231 private keys. See public and private keys privately deployed assemblies, 61 private methods partial methods as, 207 serialization and, 622 type constructors, 188 private thread locks, 797 problem signatures, 487 Process class, 688 processes creating, expensive nature of, 675 creating, vs. creating threads, 675 defined, 670 example of, 558 isolation, 557 process priority class, 686 reducing, with managed code, 17 terminating, 477, 574 threads per, 674 wasteful, identifying, 675 processor architecture, loading assemblies for, 585 ProcessThread class, 688 productivity vs. reliability in error handling, 469 program order, 765 Program type, 43 prologue code, 102 properties accessor accessiblity, 248 accessor methods, 231 automatically implemented, 231 backing fields, 230 behavior and, 248 compiler results, 244 confusion caused by, 232 C# support for, 231 declaring, 231 declaring, in anonymous types, 238 defined, 24, 152 defining, 230 defining intelligently, 232 example of, 229 generic accessor methods, 248 in metadata, 231 metadata on, 603 parameterful, 227, 242, 246 parameterless, 227 vs. public fields, 425 returning different values, 233 thread synchronization and, 233 in Tuple types, 241 Visual Studio debugger and, 234 when to use, 233 PropertyDef table, 39 PropertyInfo type, 603 public and private keys for assemblies, 67. See also strongly, named assemblies creating, 69 in CSP containers, 78 delayed signing, 76 in hardware devices, securing, 78 hashing to reduce space, 71 for publisher policy assemblies, 87
Public public constructors, defining, 195 fields, vs. properties, 425 methods, interfaces and, 299 types, 25, 154 publisher policy controls, 86 publisherPolicy elements, 85 publishing values, 808 Pulse method, 813 PulseAll method, 813 purpose of book, xxiii PutAsync method, 742
Q qsort function, 391 quantums, 672 ending early, 673 queries, LINQ. See LINQ queries QueryMemoryResource notification, 519 question marks, in C# code, 443 queues, thread-safe, 813 QueueUserWorkItem method, 409, 693, 700, 724
R raising events, in thread-safe way, 254 Rational type, 195 RCWs (Runtime Callable Wrappers), 644 Read method, 753 in I/O operations, 728 Read method (Volatile class), 765, 767, 768 read-only files, setting attribute for, 368 ReadAsync method, 729, 733, 742, 753 ReadBlockAsync method, 742 ReaderWriterLock class, 802 reader-writer locks, 801, 804 ReaderWriterLockSlim class, 800 ReadLineAsync method, 742 readonly fields, 177 defining, 178 ReadToEndAsync method, 742 real-time operating systems, 684 Realtime priority class, 685 Rectangles, constructing, 185 recursive locks, avoiding, 806 recursive thread locks, 786 ref keyword overloading methods based on, 216 vs. out keyword, 215 ref parameter, 282 reference counting, 508 ReferenceEquals method, 140, 331 References, checking, 157 reference tables in metadata, 39 reference tracking, 508 reference type variables, setting to null, 288 reference types, 118, 320 arrays of, 373 classes as, 119 converting value types into, 125 example code, 121 examples of, 119 field layout, 123 generic, 269 null-coalescing operator and, 446 overlapping with value types, 124 performance issues, 119 as primary constraints, 287 ref keyword vs. out keyword, 215 serializing, 618 sharing code, 277 swapping, 218, 219 with type constructors, 188 vs. value types, 122 referencing assemblies, 70, 98 strongly named assemblies, 74 types, 80 reflection, 141, 148, 430 discovering type members, 599 exception handling and, 485 object model, discovering, 602 performance issues, 589 serialization and, 614 type discovery with, 590, 604 type safety and, 589
Serialization reflection API for .NET Framework, 583 reflection members, generics and, 271 reflection methods, 432 Reflection namespace, 431, 588 reflection types, 588, 589 hierarchy of, 600 ReflectionOnlyGetType method, 591 ReflectionOnlyLoadFrom method, 587 ReflectionOnlyLoad method, 587 regional settings, 326 Register method CancellationToken class, 699 CancellationTokenSource class, 698 RegisterForFullGCNotification method, 523 registering assemblies, 74 relational operators, nullable types and, 444 relative thread priority classes, 685 ReleaseMutex method, 785 ReliabilityContract attribute, 496 Reliability Monitor problem signatures, 487 terminated applications, viewing in, 487 reliability vs. productivity in error handling, 469 Remove method, 260, 338, 403 RemoveAt method, 358 RemoveEventHandler method, 603 RemoveMemoryPressure method, 538 RemoveParticipant method, 805 Replace method, 338 ReportStatus method, 772 ResetAbort method, 579, 580 resolving types, 593 resource files, adding to assemblies, 53 resource leaks, 531 resources, accessing, 505 response files, 36 ignoring, 38 resurrected objects, 544 return types, discovering information on, 602 returning arrays, 382 reverse engineering, protecting against, 19 roots, 508 in garbage collection, 509 Run method, 745 Runtime binders, 148 handles, 608 Runtime Callable Wrappers (RCWs), 644 RuntimeWrappedException class, 458
S safe places, 580 SafeHandle class, 527 derivation of, 528 SafeHandle namespace, 529, 530, 531 SafeWaitHandle class, 529 satellite assemblies, 59 sbyte type, 112 scalability, threads and, 674 scheduling tasks, 711 reader/writer semantics, 815 scheduling threads, 683, 684 sealed classes, 168 partial methods and, 205 secondary constraints, 288 SecureString class, 357, 358 decrypting objects, 360 FCL support for, 358 passing objects as a password, 358 secure strings, 357 security, class, 168 SecurityCritical attribute, 489, 695 security settings, thread pools and, 694 Semaphore class, 780, 784 semaphores, 784 vs. auto-reset events, 784 as primitive kernel-mode thread synchronization constructs, 778 SemaphoreSlim class, 794, 815 sequential queries, 717 serialization, 589 AddValue method and, 627 of application state, 616 assemblies and, 616 cloning with, 615 of collection objects, 622
Date: 2016-03-03; view: 933
|