Memory Barriers at pthread using CYGWIN

Takashi Yano takashi.yano@nifty.ne.jp
Sat Jun 10 04:08:04 GMT 2023


"M?min A." wrote:
> //windows cmd line
> C:\cygwin64\home\maydin\test>cygcheck ./main.exe
> C:\cygwin64\home\maydin\test\main.exe
>   C:\cygwin64\bin\cygwin1.dll
>     C:\WINDOWS\system32\KERNEL32.dll
>       C:\WINDOWS\system32\ntdll.dll
>       C:\WINDOWS\system32\KERNELBASE.dll
> 
> C:\cygwin64\home\maydin\test>ldd ./main.exe
>         ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x7ffa92350000)
>         KERNEL32.DLL => /cygdrive/c/WINDOWS/System32/KERNEL32.DLL
> (0x7ffa90570000)
>         KERNELBASE.dll => /cygdrive/c/WINDOWS/System32/KERNELBASE.dll
> (0x7ffa8ffb0000)
>         cygwin1.dll => /usr/bin/cygwin1.dll (0x7ffa27960000)

Looks OK.

> //When cygwin terminal closed and cmd line command. Join throw fails.
> C:\cygwin64\home\maydin\test>main.exe
> Failed to join the thread t1.
> Failed to join the thread t2.
> r1 = 1, r2 = 1
> 
> //when cygwin terminal opened. The test is passed.
> C:\cygwin64\home\maydin\test>main.exe
> r1 = 1, r2 = 1
> 
> 
> I think Cygwin terminal should be always open in order to execute a file in
> windows. Am I right ?

It should not be. Weird enough.

Could you please provide a strace log file such as:
strace -o faild.log ./main.exe
?

--
Takashi Yano <takashi.yano@nifty.ne.jp>


More information about the Cygwin mailing list