 hazard pointer synchronous reclamation1 Basic Hazard Pointer Algorithm read pointer A from SRC remove A from SRC 1 5 4 Safe to use pointer A SRC A hazard pointer is a single-writer multi-reader pointer. set HP to A if SRC == A clear ACCESS If a hazard pointer points to an object before its removal, then the object will not be reclaimed as long as the hazard pointer remains unchanged unchanged. *A Hazard Pointer Synchronous Reclamation Beyond Concurrency TS2 – Maged Michael Protector Remover / Reclaimer Hazard pointers protect access to objects that may be removed concurrently. SAFE RECLAMATION0 码力 | 31 页 | 856.38 KB | 6 月前3 hazard pointer synchronous reclamation1 Basic Hazard Pointer Algorithm read pointer A from SRC remove A from SRC 1 5 4 Safe to use pointer A SRC A hazard pointer is a single-writer multi-reader pointer. set HP to A if SRC == A clear ACCESS If a hazard pointer points to an object before its removal, then the object will not be reclaimed as long as the hazard pointer remains unchanged unchanged. *A Hazard Pointer Synchronous Reclamation Beyond Concurrency TS2 – Maged Michael Protector Remover / Reclaimer Hazard pointers protect access to objects that may be removed concurrently. SAFE RECLAMATION0 码力 | 31 页 | 856.38 KB | 6 月前3
 Back to Basics: Pointerslanguage. In this talk, we will discuss the low level foundations of what a raw pointer is--a variable that stores an address. We will then see some examples of raw pointers for creating data structures leave understanding how we can use pointers in a safe manner through the standard library smart pointer abstractions. 4 The abstract that you read and enticed you to join me is here!Code for the talk and more on: www.mshah.io 6One of my fondest programming memories was... 7... when I used a pointer correctly on the first try 8 ● And maybe as a C or C++ programmer you have a similar memory or0 码力 | 152 页 | 5.61 MB | 6 月前3 Back to Basics: Pointerslanguage. In this talk, we will discuss the low level foundations of what a raw pointer is--a variable that stores an address. We will then see some examples of raw pointers for creating data structures leave understanding how we can use pointers in a safe manner through the standard library smart pointer abstractions. 4 The abstract that you read and enticed you to join me is here!Code for the talk and more on: www.mshah.io 6One of my fondest programming memories was... 7... when I used a pointer correctly on the first try 8 ● And maybe as a C or C++ programmer you have a similar memory or0 码力 | 152 页 | 5.61 MB | 6 月前3
 Comprehensive Rust(English) 202412have widths as follows: • iN, uN, and fN are N bits wide, • isize and usize are the width of a pointer, • char is 32 bits wide, • bool is 8 bits wide. There are a few syntaxes which are not shown above: to encode the discriminant (the ”niche optimization”). For example, Option<&u8> stores either a pointer to an integer or NULL for the None variant. – You can control the discriminant if needed (e.g., Explore Rust has several optimizations it can employ to make enums take up less space. • Null pointer optimization: For some types, Rust guarantees that size_of:: Comprehensive Rust(English) 202412have widths as follows: • iN, uN, and fN are N bits wide, • isize and usize are the width of a pointer, • char is 32 bits wide, • bool is 8 bits wide. There are a few syntaxes which are not shown above: to encode the discriminant (the ”niche optimization”). For example, Option<&u8> stores either a pointer to an integer or NULL for the None variant. – You can control the discriminant if needed (e.g., Explore Rust has several optimizations it can employ to make enums take up less space. • Null pointer optimization: For some types, Rust guarantees that size_of::- () equals size_of:: 0 码力 | 382 页 | 1.00 MB | 10 月前3
 Oracle VM VirtualBox 5.2.40 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 422 页 | 2.45 MB | 6 月前3 Oracle VM VirtualBox 5.2.40 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 422 页 | 2.45 MB | 6 月前3
 Oracle VM VirtualBox 5.2.12 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 421 页 | 2.43 MB | 6 月前3 Oracle VM VirtualBox 5.2.12 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 421 页 | 2.43 MB | 6 月前3
 Oracle VM VirtualBox 4.1.40 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VBoxXPCOMC.so and the only one needed to make virtualbox * work with C. This functions gives you the pointer to the * function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions with an extra indirection due to accessing the vtable and passing a pointer to the object as the first argument to serve as the this pointer. Using the C binding, all method invocations return a numeric result0 码力 | 306 页 | 1.92 MB | 6 月前3 Oracle VM VirtualBox 4.1.40 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VBoxXPCOMC.so and the only one needed to make virtualbox * work with C. This functions gives you the pointer to the * function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions with an extra indirection due to accessing the vtable and passing a pointer to the object as the first argument to serve as the this pointer. Using the C binding, all method invocations return a numeric result0 码力 | 306 页 | 1.92 MB | 6 月前3
 Oracle VM VirtualBox 4.3.36 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 376 页 | 1.99 MB | 6 月前3 Oracle VM VirtualBox 4.3.36 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 376 页 | 1.99 MB | 6 月前3
 Oracle VM VirtualBox 4.3.12 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 376 页 | 2.24 MB | 6 月前3 Oracle VM VirtualBox 4.3.12 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VirtualBox version dependent header file name and makes sure the global variable g_pVBoxFuncs contains a pointer to the structure which contains the helper function pointers. Here’s how to initialize the C API: library, handles errors * (producing an error message hinting what went wrong) and gives you * the pointer to the function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions0 码力 | 376 页 | 2.24 MB | 6 月前3
 Oracle VM VirtualBox 4.2.32 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VBoxXPCOMC.so and the only one needed to make virtualbox * work with C. This functions gives you the pointer to the * function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions with an extra indirection due to accessing the vtable and passing a pointer to the object as the first argument to serve as the this pointer. Using the C binding, all method invocations return a numeric result0 码力 | 339 页 | 2.07 MB | 6 月前3 Oracle VM VirtualBox 4.2.32 Programming Guide and Referenceservice process, each managed object reference is simply a small data structure, containing a COM pointer to the “real” COM object, the web session ID and the object ID. This structure is allocated on creation VBoxXPCOMC.so and the only one needed to make virtualbox * work with C. This functions gives you the pointer to the * function table (g_pVBoxFuncs). * * Once you get the function table, then how and which functions with an extra indirection due to accessing the vtable and passing a pointer to the object as the first argument to serve as the this pointer. Using the C binding, all method invocations return a numeric result0 码力 | 339 页 | 2.07 MB | 6 月前3
 Comprehensive Rust(Persian	) 202412� � � � (. • � � � � � � � � � � � � � dyn Pet & � � � � � � � � ” � � � � � � � � � � ” ) fat pointer ( � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � : � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � inline � � � � pointer indirection � � � � � � � � � � � � � � � � � � � � � � � � � � � � Box � � � � � � � � � � : 126 � � � vector � � � � � � � � � � � � � ) fat pointers ( � � � � � : – � � � � � � � � � � ) fat pointer ( � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � : �0 码力 | 393 页 | 987.97 KB | 10 月前3 Comprehensive Rust(Persian	) 202412� � � � (. • � � � � � � � � � � � � � dyn Pet & � � � � � � � � ” � � � � � � � � � � ” ) fat pointer ( � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � : � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � inline � � � � pointer indirection � � � � � � � � � � � � � � � � � � � � � � � � � � � � Box � � � � � � � � � � : 126 � � � vector � � � � � � � � � � � � � ) fat pointers ( � � � � � : – � � � � � � � � � � ) fat pointer ( � � � � � � � � � � � � � � � � � � � � � � � � . � � � � � � � � � � � � � � � � � � � � � : �0 码力 | 393 页 | 987.97 KB | 10 月前3
共 312 条
- 1
- 2
- 3
- 4
- 5
- 6
- 32














 
 