摘要:
Extensions to a debugger are identified in a debugger database which is read automatically when the debugger loads. The debugger watches for trigger events in its execution environment and optionally for load conditions in a debuggee program's internal state. If a trigger event occurs and a load condition is met, then the debugger automatically loads an extension for use. Some extensions provide debugging routines that are specifically designed to support debugging of applications which use a specific programming model.
摘要:
Web server processes can host multiple web applications that process multiple requests from multiple clients. Recorded diagnostic information may not provide a useful separation of server execution data (e.g., functionality executed to process a request) based on a client's use of the web server process. An effective method for separating server execution data by client information is provided herein. Dye is injected into a request from a client, the dye comprises information regarding the client application making the request and a transaction (e.g., client defined set of requests) that the request is comprised within. The dye injected request is sent to a web server process (e.g., on a web server) that extracts the dye and executes the request. During execution of the request, executed functionality is associated and stored with the extracted dye. The recorded server execution data may be organized based upon the request, client, application, and/or transaction.
摘要:
Specific tasks associated with debugging are performed in the background, prior to a user of an application development tool invoking the debugger. The tasks including (1) starting a hosting process, (2) loading a hosted runtime environment (e.g., .NET runtime) in the process, and (3) attaching a debugger to the hosting process, are performed in the background before the user commences debugging. Once the user invokes the debugger, the user's application is executed and debugged. Thus, the perceived time to start debugging is greatly reduced.
摘要:
A development environment in which unit tests are prepared. The unit tests run in a host environment for more complete and accurate testing of program units. The development environment uses a test execution shim to access an adapter running in the host environment. The host adapter may invoke other program objects that run specific tests. Such objects may late bind to the unit under test. An accessor class may facilitate late binding to the specific unit under test while allowing tests authored in the development environment to use context sensitive information needed to access the unit under test.
摘要:
A syringe shielding apparatus comprising an adapter having a tubular collar and a flexible snap ring joined by a living hinge, and a needle shield. Radially extending projections, provided on the tubular collar, slide within longitudinally extending slots in the needle shield, allowing the longitudinal extension and retraction of the needle shield relative to the housing of the syringe. The flexible snap ring expands into a groove in the needle shield at extension. Expansion of the snap ring into the groove in the needle shield locks the shield in the extended position over the syringe needle.
摘要:
A system and method of providing edit and continue support in a software program debugging environment. “Edit and continue” support allows a user (e.g., programmer and/or developer) to update the code and/or data structure(s) of an executing program while it is running. After the user has finished editing their code and resumes execution, an integrated development environment (IDE) propagates the edit(s) into a common language runtime (CLR) environment before continuing. Therefore, from the CLR environment's perspective, an edit is a block of intermediate language code (IL) and/or metadata that is inserted into a running process. The IDE can facilitate: determining “legality” of an edit; building the edit; sending the edit to the CLR environment; and/or, facilitating the CLR environment switch execution to the edited code.
摘要:
Specific tasks associated with debugging are performed in the background, prior to a user of an application development tool invoking the debugger. The tasks including (1) starting a hosting process, (2) loading a hosted runtime environment (e.g., .NET runtime) in the process, and (3) attaching a debugger to the hosting process, are performed in the background before the user commences debugging. Once the user invokes the debugger, the user's application is executed and debugged. Thus, the perceived time to start debugging is greatly reduced.
摘要:
A debugger enhancement provides a debug-task-provider interface whose implementation includes routines designed to support debugging of programs that contain tasks written for a specific programming model. Task creation hierarchies, individual task properties, resource dependencies, synchronization dependencies, and other information can be made accessible during debugging, through a model-independent interface. In a multithreaded environment, a mapping between tasks and threads is also available.
摘要:
Web server processes can host multiple web applications that process multiple requests from multiple clients. Recorded diagnostic information may not provide a useful separation of server execution data (e.g., functionality executed to process a request) based on a client's use of the web server process. An effective method for separating server execution data by client information is provided herein. Dye is injected into a request from a client, the dye comprises information regarding the client application making the request and a transaction (e.g., client defined set of requests) that the request is comprised within. The dye injected request is sent to a web server process (e.g., on a web server) that extracts the dye and executes the request. During execution of the request, executed functionality is associated and stored with the extracted dye. The recorded server execution data may be organized based upon the request, client, application, and/or transaction.
摘要:
A debugger enhancement provides a debug-task-provider interface whose implementation includes routines designed to support debugging of programs that contain tasks written for a specific programming model. Task creation hierarchies, individual task properties, resource dependencies, synchronization dependencies, and other information can be made accessible during debugging, through a model-independent interface. In a multithreaded environment, a mapping between tasks and threads is also available.