galenkane, Я хотел в динамике определить, но это так просто не работает: Код (Text): ; 1st thread. ;P: ; mov eax,12345678 ; mov edx,87654321 ; 2st thread. ; mov eax,33BA8765h ; xchg D[P][3],eax ; --> ; mov eax,87655678 ; mov edx,87654333 PIPE_MAX equ 61+64 ; Pipeline max(61) SHED_MAX equ 16 ; Quant's Pp: ; mb align 64 dw PIPE_MAX dup (0C031h) ; inc eax Pipeline proc C P:: mov eax,12345678h mov edx,87654321h .if ((Eax == 12345678h) && (Edx != 87654321h)) || ((Eax == 87655678h) && (Edx != 87654333h)) int 3 not edi lea eax,[edi][PIPE_MAX][1] jmp Exit .endif ; Wait for end-of-quantum. mov ax,fs .if Ax == 53h ; WOW xor eax,eax mov fs,ax .repeat mov ax,fs .until Ax .else ; Native fwait .repeat smsw ax test ax,1000B .until !Zero? .endif ; push offset Pp ; retn dec esi jnz Sjmp mov esi,SHED_MAX ; Quant's dec ebx ; P dec ebx ; P dec edi ; Length jnz Sjmp xor eax,eax Exit: mov Psize,eax popad ret 4 ; ~Arg Pent:: lea ebx,P mov esi,SHED_MAX mov edi,PIPE_MAX Sent: pushad Sjmp: jmp Ebx Pipeline endp --- Сообщение объединено, 6 май 2025 --- Pp: dw PIPE_MAX dup (0C031h) Pipeline proc C - останов. nop Pp: - останов. nop nop Pp: - останов. nop nop nop Pp: - бесконечный цикл. --- Сообщение объединено, 6 май 2025 --- И ещё не понятное. Этот семпл выше не корректный, но при отладке он работает, хотя не должен так. Происходит ожидание окончания поточного кванта, затем должен быть цикл на переменных. Но, без такого цикла в течении ~5 квантов происходит останов. Как это такое может быть опять же хз.