1. A connector (10), comprising:
a housing (11),
a plurality of terminal fittings (70) inserted into the housing (11),
an accommodating chamber (17) in the housing (11), and
a shorting terminal (90) in the accommodating chamber (17) and biased into shorting contact with the terminal fittings (70) and configured to be deflected away from a shorting state when the connector (10) is connected with a mating connector (20), wherein:
positioning portions (17A; 17B) are provided in the accommodating chamber (17) of the housing (11) for holding and positioning the shorting terminal (90) at its front and rear positions at least with respect to a connecting direction (CD) of the connectors (10, 20), and
a window (16) is formed in a side surface of the housing (11) and communicates with the accommodating chamber (17) for permitting entry of the shorting terminal (90) into the accommodating chamber (17).
2. The connector of claim 1, wherein the window (16) is aligned with the positioning portions (17A; 17B).
3. The connector according of claim 1, further comprising a lid (80) for at least partly closing the window (16).
4. The connector of claim 3, wherein the lid (80) includes a cover (81) for at least partly covering the window (16) and at least one lock (82) for locking the terminal fittings (70) in the housing (11).
5. The connector of claim 1, wherein the shorting terminal (90) has a base plate (94), shorting pieces (92) at one end of the base plate (94) and extending towards the terminal fittings (70), a deformation space between the shorting pieces (92) and the base plate (94) for permitting deformation of the shorting pieces (92), and the base plate (94) having a resiliently deformable lock (93) projecting away from the deformation space and oblique to an inserting direction (ID) of the shorting terminal (90) into the accommodating chamber (1 7).
6. The connector of claim 5, wherein a receiving portion (17E) is provided on an inner surface of the accommodating chamber (17) of the housing (11) for engaging and locking the lock (93).
7. The connector of claim 6, wherein the base plate (94) has an elevated portion (97) projecting towards the deformation space, and the lock (93) projects into an elevation space (S) inside the elevated portion (97).
8. The connector of claim 7, wherein the lock (93) of the shorting terminal (90) is resiliently deformed and slides on the receiving portion (17E) upon inserting the shorting terminal (90) in the accommodating space (17).
9. The connector of claim 8, wherein the base plate (94) has an inclined portion (100) sloped towards the deformation space, the lock (93) being provided at the inclined portion (100), and the receiving portion (17E) is provided along the inclined portion (100).
10. A connector (10), comprising:
a housing (11), cavities (15) extending through the housing (11) along a connecting direction (CD), an accommodating chamber (17) extending into a side surface the housing (11) along an inserting direction (ID) transverse to the connecting direction (CD) and communicating with the cavities (15), positioning grooves (17A; 17B) extending along the inserting direction (ID) in the accommodating chamber (17);
terminal fittings (70) inserted into the respective cavities (15); and
a shorting terminal (90) inserted along the inserting direction (ID) into the accommodating chamber (17) and biased into shorting contact with the terminal fittings (70), portions of the shorting terminal (90) being slid into the positioning grooves (17A; 17B) for positioning the shorting terminal (90) at front and rear positions at least with respect to the connecting direction (CD).
11. The connector (10) of claim 10, wherein the side surface of the housing (11) has a window (16) opening to the accommodating chamber (17), a retainer (80) being insertable along the inserting direction (ID) through the window (16) and into a position for locking the terminal fittings (70) in the.
12. The connector (10) of claim 11, wherein the retainer (80) has a lid (81) for substantially closing the window (16).
13. The connector of claim 12, wherein the shorting terminal (90) has a base plate (94), shorting pieces (92) extending from the base plate (94) towards the terminal fittings (70), a deformation space between the shorting pieces (92) and the base plate (94), and a resiliently deformable lock (93) projecting from the base plate (94) away from the deformation space and oblique to the inserting direction (ID).
14. The connector of claim 13, wherein the base plate (94) has an elevated portion (97) projecting towards the deformation space, and the lock (93) projects into an elevation space (S) inside the elevated portion (97).
15. A connector system, comprising:
a first connector (10) having a housing (11), cavities (15) extending through the housing (11) along a connecting direction (CD), an accommodating chamber (17) extending into a side surface the housing (11) along an inserting direction (ID) transverse to the connecting direction (CD) and communicating with the cavities (15), positioning grooves (17A; 17B) extending along the inserting direction (ID) in the accommodating chamber (17), terminal fittings (70) inserted into the respective cavities (15), and a shorting terminal (90) inserted along the inserting direction (ID) into the accommodating chamber (17) and biased into shorting contact with the terminal fittings (70), portions of the shorting terminal (90) being slid into the positioning grooves (17A; 17B) for positioning the shorting terminal (90) at front and rear positions at least with respect to the connecting direction (CD); and
a second connector (20) connectable with the first connector (10), the second connector (20) having at least one canceling portion (27) for deflecting the shorting terminal (90) away from the terminal fittings (70) and thereby canceling a shorted state of the terminal fittings (70) when the connectors (10, 20) are connected properly.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A computer program product for multi-threading, the computer program product comprising:
a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
computer readable program code configured to generate an interrupt based on an event;
computer readable program code configured to select a thread for monitoring;
computer readable program code configured to capture information, with an interrupt handler, for a monitored thread;
computer readable program code configured to set an affinity of the monitored thread such that the monitored thread runs only on a current processor without being able to migrate to a different processor; and
computer readable program code configured to retrieve, with a sampler thread that runs on the current processor, a call stack associated with a monitored thread after the affinity of the monitored thread has been set to the current processor.
2. The computer program product of claim 1, wherein the computer readable program code is also configured to restore the affinity of the monitored thread after the call stack has been retrieved.
3. The computer program product of claim 1, wherein the monitored thread is selected utilizing a subsequent thread in a list of threads.
4. The computer program product of claim 1, wherein the interrupt handler selects the monitored thread in response to taking an interrupt.
5. The computer program product of claim 1, wherein the monitored thread is selected by a sampler thread.
6. The computer program product of claim 1, wherein the monitored thread is selected randomly according to a random selection process.
7. The computer program product of claim 6, wherein the random selection process includes a weighting related to a number of times each thread is interrupted.
8. The computer program product of claim 1, wherein the current processor is busy at the time the interrupt is signaled and the monitored thread is not currently executing.
9. The computer program product of claim 1, wherein the monitored thread is selected from a list of threads identified during a warm up phase before the call stacks are recorded.
10. A method comprising:
generating an interrupt based on an event;
selecting a thread for monitoring;
capturing information, with an interrupt handler, for a monitored thread;
setting an affinity of the monitored thread such that the monitored thread runs only on a current processor without being able to migrate to a different processor;
retrieving, with a sampler thread that runs on the current processor, a call stack associated with a monitored thread after the affinity of the monitored thread has been set to the current processor; and
restoring the affinity of the monitored thread after the call stack has been retrieved.
11. The method of claim 10, further comprising restoring the affinity of the monitored thread after the call stack has been retrieved.
12. The method of claim 10, wherein the interrupt handler selects the monitored thread in response to taking an interrupt.
13. The method of claim 10, wherein the monitored thread is selected by a sampler thread.
14. The method of claim 10, wherein the monitored thread is selected randomly according to a random selection process.
15. The method of claim 14, wherein the random selection process includes a weighting related to a number of times each thread is interrupted.
16. The method of claim 10, wherein the current processor is busy at the time the interrupt is signaled and the monitored thread is not currently executing.
17. The method of claim 10, wherein the monitored thread is selected from a list of threads identified during a warm up phase before the call stacks are recorded.
18. A system comprising:
a current processor that generates an interrupt based on an event;
an affinity module that (i) identifies a thread for monitoring that captures information, with an interrupt handler, for the monitored thread and (ii) sets an affinity of the monitored thread such that the monitored thread runs only on a current processor without being able to migrate to a different processor; and
a profiler that retrieves, with a sampler thread that runs on the current processor, a call stack associated with the monitored thread after the affinity of the monitored thread has been set to the current processor.
19. The system of claim 18, wherein the monitored thread is selected utilizing a subsequent thread in a list of threads
20. The system of claim 18, wherein the interrupt handler selects the monitored thread in response to taking an interrupt.
21. The system of claim 20, wherein the monitored thread is selected by a sampler thread.
22. The system of claim 21, wherein the monitored thread is suspended after the monitored thread is identified.
23. The system of claim 22, wherein the monitored thread is resumed the after the affinity is set.