Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c++ > #117659 > unrolled thread

A Java- / .NET-like monitor

Started byBonita Montero <Bonita.Montero@gmail.com>
First post2023-11-08 15:56 +0100
Last post2023-11-13 22:46 -0800
Articles 20 on this page of 259 — 9 participants

Back to article view | Back to comp.lang.c++


Contents

  A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-08 15:56 +0100
    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-08 19:31 +0100
      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-08 20:56 +0100
        Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-08 23:25 +0000
          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 05:33 +0100
            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 20:36 -0800
              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 05:38 +0100
                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 20:42 -0800
                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:08 +0100
                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:11 -0800
                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:12 -0800
                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:17 +0100
                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:35 -0800
                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:39 +0100
                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:40 -0800
                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:41 -0800
                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:42 +0100
                                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:44 -0800
                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:44 -0800
                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:45 +0100
                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:48 -0800
                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:50 -0800
                                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:58 -0800
                                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 22:46 -0800
                                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:52 +0100
                                        Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-14 21:10 -0500
                                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-15 06:07 +0100
                                            Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-17 21:16 -0500
                                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-18 04:06 +0100
                                                Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-18 12:53 -0500
                                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-18 20:04 +0100
                                                  Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-18 19:24 +0000
                                                    Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-18 20:29 +0000
                                                      Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-18 21:46 +0000
                                                      Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-18 20:18 -0500
                                                      Re: A Java- / .NET-like monitor Michael S <already5chosen@yahoo.com> - 2023-11-24 01:14 +0200
                                                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-23 21:35 -0800
                                                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-24 08:59 +0100
                                                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-24 01:17 -0800
                                                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-24 10:25 +0100
                                                              Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-24 15:59 +0000
                                                                Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-24 18:33 +0000
                                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-24 15:39 -0800
                                                                    Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-25 00:08 +0000
                                                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-24 16:27 -0800
                                                                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-25 14:47 -0800
                                                                      Re: A Java- / .NET-like monitor "Fred. Zwarts" <F.Zwarts@HetNet.nl> - 2023-11-25 13:02 +0100
                                                                        Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-25 17:28 +0000
                                                                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-25 18:48 +0100
                                                                            Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-25 18:09 +0000
                                                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-25 13:12 +0100
                                                                    Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-25 18:10 +0000
                                                                      Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-25 19:30 +0000
                                                                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-25 14:57 -0800
                                                                        Re: A Java- / .NET-like monitor Michael S <already5chosen@yahoo.com> - 2023-11-26 01:29 +0200
                                                                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-25 15:56 -0800
                                                                          Re: A Java- / .NET-like monitor David Brown <david.brown@hesbynett.no> - 2023-11-26 13:54 +0100
                                                                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-26 14:38 +0100
                                                                              Re: A Java- / .NET-like monitor David Brown <david.brown@hesbynett.no> - 2023-11-26 16:28 +0100
                                                                                Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-26 18:51 +0100
                                                                                  Re: A Java- / .NET-like monitor David Brown <david.brown@hesbynett.no> - 2023-11-26 20:27 +0100
                                                                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-26 14:38 -0800
                                                                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-26 15:00 -0800
                                                                                    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-27 05:23 +0100
                                                                                      Re: A Java- / .NET-like monitor David Brown <david.brown@hesbynett.no> - 2023-11-27 10:38 +0100
                                                                                        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-27 10:55 +0100
                                                                                          Re: A Java- / .NET-like monitor David Brown <david.brown@hesbynett.no> - 2023-11-27 11:19 +0100
                                                                                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-27 12:32 +0100
                                                                              Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-26 22:55 +0000
                                                                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-27 15:15 -0800
                                                                              Re: A Java- / .NET-like monitor David Brown <david.brown@hesbynett.no> - 2023-11-28 09:03 +0100
                                                                  Re: A Java- / .NET-like monitor David Brown <david.brown@hesbynett.no> - 2023-11-25 13:58 +0100
                                                    Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-18 20:09 -0500
                                                    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-19 05:58 +0100
                                                      Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-19 05:02 +0000
                                                        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-19 07:00 +0100
                                                          Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-19 06:08 +0000
                                                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-19 12:05 +0100
                                                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-19 12:08 -0800
                                                                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-19 12:11 -0800
                                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-19 12:17 -0800
                                                                Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-20 13:26 +0100
                                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-20 12:18 -0800
                                                                    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-21 10:25 +0100
                                                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-23 21:38 -0800
                                                                        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-24 08:56 +0100
                                                                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-24 01:22 -0800
                                                                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-24 19:10 +0100
                                                                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-24 15:43 -0800
                                                                                Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-25 13:04 +0100
                                                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-25 15:06 -0800
                                                                                    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-26 11:35 +0100
                                                                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-26 15:45 -0800
                                                                                        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-27 05:24 +0100
                                                                                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-26 22:22 -0800
                                                                                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-27 08:57 +0100
                                                                                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-27 00:28 -0800
                                                                                                Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-27 09:34 +0100
                                                                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-27 14:59 -0800
                                                                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-27 14:59 -0800
                                                                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-27 15:19 -0800
                                                                                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-28 15:13 -0800
                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-18 12:46 -0800
                                                    Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-18 21:47 +0000
                                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-18 14:02 -0800
                                                        Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-18 20:20 -0500
                                                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-20 13:12 -0800
                                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 08:01 +0100
                                        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 08:01 +0100
                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:50 +0100
                    Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-11 17:45 -0500
                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-12 05:43 +0100
                        Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-12 05:02 +0000
                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-12 11:00 +0100
                            Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-12 17:18 +0000
                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-13 07:33 +0100
                                Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-13 07:47 +0100
                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 12:50 -0800
                                    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 06:20 +0100
                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 21:21 -0800
                                        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 07:44 +0100
                                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 22:51 -0800
                                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 22:55 -0800
                                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 08:00 +0100
                                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 08:07 +0100
                                                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 23:08 -0800
                                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 23:07 -0800
                                          Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-14 15:18 +0000
                                            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 16:46 +0100
                                              Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-14 16:09 +0000
                                                Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 17:41 +0100
                                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 18:41 +0100
                                                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-14 12:25 -0800
                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-14 14:25 -0800
                                                  Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-14 22:50 +0000
                                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-15 12:07 -0800
                                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-15 05:57 +0100
                                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-15 12:08 -0800
                                                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-16 03:59 +0100
                                                        Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-16 15:02 +0000
                                                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-16 18:12 +0100
                                                            Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-16 17:45 +0000
                                                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-27 15:24 -0800
                            Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-12 17:53 +0000
                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-12 12:51 -0800
                              Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-12 19:33 -0500
                                Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-13 04:50 +0000
                                  Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-13 22:05 -0500
                                    Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-14 03:30 +0000
                                      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 22:35 -0800
                                      Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-14 20:26 -0500
                                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-15 12:11 -0800
                                          Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-15 23:07 -0500
                                            Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-16 06:39 +0000
                                              Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-16 21:48 -0500
                                                Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-17 16:29 +0000
                                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-17 10:22 -0800
                                                  Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-17 18:37 +0000
                                                    Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-18 00:45 +0000
                                                      Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-18 02:30 +0000
                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-16 11:11 +0100
                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-13 07:35 +0100
                                Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-13 15:05 +0000
                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-13 16:36 +0100
                                    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-13 17:24 +0100
                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-12 12:48 -0800
                          Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-12 19:29 -0500
                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-12 16:44 -0800
                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-16 14:16 -0800
                            Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-13 04:48 +0000
                              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 14:32 -0800
                              Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-13 21:27 -0500
                                Re: A Java- / .NET-like monitor scott@slp53.sl.home (Scott Lurndal) - 2023-11-14 15:12 +0000
                                  Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-14 20:35 -0500
                              Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-13 21:58 -0500
                                Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-14 03:27 +0000
                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 21:28 -0800
                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 21:29 -0800
                                      Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-14 20:47 -0500
                                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-15 12:18 -0800
                                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-15 12:20 -0800
                                        Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-15 21:26 +0000
                                          Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-16 00:25 -0500
                                  Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-14 20:42 -0500
                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-28 15:32 -0800
                        Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-12 19:17 -0500
            Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-09 05:17 +0000
              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:18 -0800
                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:20 -0800
              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:19 +0100
                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:20 -0800
        Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-08 23:51 +0000
          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:10 -0800
        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 15:32 -0800
          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 05:35 +0100
            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:17 -0800
              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:22 +0100
                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:27 -0800
                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:29 +0100
                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:31 -0800
                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:34 +0100
                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:36 -0800
                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 06:40 +0100
                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:42 -0800
                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 07:32 +0100
                                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 22:54 -0800
                                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 23:01 -0800
                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 23:03 -0800
                  Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:30 -0800
                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 21:32 -0800
        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 14:59 -0800
      Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-08 19:49 +0000
    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-08 18:16 +0100
      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 13:49 -0800
        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 05:37 +0100
          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 20:40 -0800
        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 20:39 -0800
      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 13:41 -0800
        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 05:36 +0100
          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-08 20:41 -0800
    Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-08 18:16 +0000
    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 10:07 +0100
      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-09 01:11 -0800
        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-09 10:17 +0100
          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-09 01:22 -0800
            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-09 01:23 -0800
      Re: A Java- / .NET-like monitor Branimir Maksimovic <branimir.maksimovic@icloud.com> - 2023-11-10 13:56 +0000
        Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-10 15:08 +0100
          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-10 15:15 +0100
            Re: A Java- / .NET-like monitor Branimir Maksimovic <branimir.maksimovic@icloud.com> - 2023-11-11 02:59 +0000
          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-10 12:44 -0800
            Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-11 04:53 +0100
              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-10 20:09 -0800
              Re: A Java- / .NET-like monitor Branimir Maksimovic <branimir.maksimovic@icloud.com> - 2023-11-11 04:25 +0000
                Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-11 07:07 +0100
    Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-11 11:41 +0100
      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-11 16:39 +0100
        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-11 11:42 -0800
          Re: A Java- / .NET-like monitor Pavel <pauldontspamtolk@removeyourself.dontspam.yahoo> - 2023-11-11 17:49 -0500
          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-12 05:40 +0100
            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-12 12:46 -0800
              Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 23:13 -0800
              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 10:04 +0100
                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-14 01:21 -0800
                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 11:00 +0100
                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-14 02:08 -0800
                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-14 11:23 +0100
                        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-14 12:27 -0800
                          Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-14 12:29 -0800
                          Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-15 05:54 +0100
                            Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-15 12:21 -0800
                              Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-16 04:00 +0100
                                Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-15 19:10 -0800
                                  Re: A Java- / .NET-like monitor Kaz Kylheku <864-117-4973@kylheku.com> - 2023-11-16 03:21 +0000
                                  Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-16 06:36 +0100
                                    Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-16 13:06 -0800
                                      Re: A Java- / .NET-like monitor Bonita Montero <Bonita.Montero@gmail.com> - 2023-11-17 06:57 +0100
      Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-11 11:41 -0800
        Re: A Java- / .NET-like monitor "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2023-11-13 22:46 -0800

Page 6 of 13 — ← Prev page 1 … 4 5 [6] 7 8 … 13  Next page →


#118005

From"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Date2023-11-27 15:19 -0800
Message-ID<uk3855$3utkg$4@dont-email.me>
In reply to#117978
On 11/26/2023 2:35 AM, Bonita Montero wrote:
> Am 26.11.2023 um 00:06 schrieb Chris M. Thomasson:
> 
>> Huh? Drill down on that. What do you mean wrt "_after_ you waited"?
> 
> If you want to wait mor than on the IOCP itself you could use WFMO
> and if the IOCP was signalled GQCS afterwards. With an IOCP you can
> wait only for the IOCP and maybe an alert if you use GQCSE.
> 
>> So your hack can break at any time? ...
> 
> It would be nice if MS would document since when this works.
> 
>> So your hack can break at any time? Keep in mind that I said GQCSEX... 
>> :^) Its more efficient that GQCS. ...
> 
> It's not about the efficiency but that you could be signalled other
> waitable kernel objects also.
> 

God knows what WFMO is going to do to that IOCP handle. It could break 
things at a lower level of logic.

[toc] | [prev] | [next] | [standalone]


#118010

From"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Date2023-11-28 15:13 -0800
Message-ID<uk5s6q$f83j$1@dont-email.me>
In reply to#118005
On 11/27/2023 3:19 PM, Chris M. Thomasson wrote:
> On 11/26/2023 2:35 AM, Bonita Montero wrote:
>> Am 26.11.2023 um 00:06 schrieb Chris M. Thomasson:
>>
>>> Huh? Drill down on that. What do you mean wrt "_after_ you waited"?
>>
>> If you want to wait mor than on the IOCP itself you could use WFMO
>> and if the IOCP was signalled GQCS afterwards. With an IOCP you can
>> wait only for the IOCP and maybe an alert if you use GQCSE.
>>
>>> So your hack can break at any time? ...
>>
>> It would be nice if MS would document since when this works.
>>
>>> So your hack can break at any time? Keep in mind that I said 
>>> GQCSEX... :^) Its more efficient that GQCS. ...
>>
>> It's not about the efficiency but that you could be signalled other
>> waitable kernel objects also.
>>
> 
> God knows what WFMO is going to do to that IOCP handle. It could break 
> things at a lower level of logic.

Nt 4.0 source code is out there. Humm... So, you should dig into it and 
see what happens to IOCP if you pass its handle to WFMO...

[toc] | [prev] | [next] | [standalone]


#117866

From"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Date2023-11-18 12:46 -0800
Message-ID<ujb7r2$3f4nr$1@dont-email.me>
In reply to#117862
On 11/18/2023 9:53 AM, Pavel wrote:
> Bonita Montero wrote:
>> Am 18.11.2023 um 03:16 schrieb Pavel:
>>
>>> There is no system call in UNIX to wait for many conditions to be met 
>>> at once; but I do not see why it would be useful.
>>
>> poll() and wait() wait for at least one condition to be met.
> what does it have to do with what I wrote?
> 
> Again, what a system call that waits for many conditions to be met at 
> once can be useful for?

select?

[toc] | [prev] | [next] | [standalone]


#117868

Fromscott@slp53.sl.home (Scott Lurndal)
Date2023-11-18 21:47 +0000
Message-ID<Xha6N.99518$wvv7.65238@fx14.iad>
In reply to#117866
"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes:
>On 11/18/2023 9:53 AM, Pavel wrote:
>> Bonita Montero wrote:
>>> Am 18.11.2023 um 03:16 schrieb Pavel:
>>>
>>>> There is no system call in UNIX to wait for many conditions to be met 
>>>> at once; but I do not see why it would be useful.
>>>
>>> poll() and wait() wait for at least one condition to be met.
>> what does it have to do with what I wrote?
>> 
>> Again, what a system call that waits for many conditions to be met at 
>> once can be useful for?
>
>select?

I took Pavel to mean 'wait for all conditions to be true' rather than
'wait for one or more conditions to be true'.

[toc] | [prev] | [next] | [standalone]


#117869

From"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Date2023-11-18 14:02 -0800
Message-ID<ujbcaa$3ftah$1@dont-email.me>
In reply to#117868
On 11/18/2023 1:47 PM, Scott Lurndal wrote:
> "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes:
>> On 11/18/2023 9:53 AM, Pavel wrote:
>>> Bonita Montero wrote:
>>>> Am 18.11.2023 um 03:16 schrieb Pavel:
>>>>
>>>>> There is no system call in UNIX to wait for many conditions to be met
>>>>> at once; but I do not see why it would be useful.
>>>>
>>>> poll() and wait() wait for at least one condition to be met.
>>> what does it have to do with what I wrote?
>>>
>>> Again, what a system call that waits for many conditions to be met at
>>> once can be useful for?
>>
>> select?
> 
> I took Pavel to mean 'wait for all conditions to be true' rather than
> 'wait for one or more conditions to be true'.
> 

Ahhh. I missed that. Sorry everybody! ;^o

[toc] | [prev] | [next] | [standalone]


#117872

FromPavel <pauldontspamtolk@removeyourself.dontspam.yahoo>
Date2023-11-18 20:20 -0500
Message-ID<mpd6N.101930$wvv7.24116@fx14.iad>
In reply to#117869
Chris M. Thomasson wrote:
> On 11/18/2023 1:47 PM, Scott Lurndal wrote:
>> "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes:
>>> On 11/18/2023 9:53 AM, Pavel wrote:
>>>> Bonita Montero wrote:
>>>>> Am 18.11.2023 um 03:16 schrieb Pavel:
>>>>>
>>>>>> There is no system call in UNIX to wait for many conditions to be met
>>>>>> at once; but I do not see why it would be useful.
>>>>>
>>>>> poll() and wait() wait for at least one condition to be met.
>>>> what does it have to do with what I wrote?
>>>>
>>>> Again, what a system call that waits for many conditions to be met at
>>>> once can be useful for?
>>>
>>> select?
>>
>> I took Pavel to mean 'wait for all conditions to be true' rather than
>> 'wait for one or more conditions to be true'.
>>
> 
> Ahhh. I missed that. Sorry everybody! ;^o
NP, Scott is correct, this was about "wait for many conditions to be met 
at once" that Bonita missed on Linux for some reason I still cannot get 
or relate to.

[toc] | [prev] | [next] | [standalone]


#117895

From"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Date2023-11-20 13:12 -0800
Message-ID<ujgi4a$evq1$8@dont-email.me>
In reply to#117872
On 11/18/2023 5:20 PM, Pavel wrote:
> Chris M. Thomasson wrote:
>> On 11/18/2023 1:47 PM, Scott Lurndal wrote:
>>> "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes:
>>>> On 11/18/2023 9:53 AM, Pavel wrote:
>>>>> Bonita Montero wrote:
>>>>>> Am 18.11.2023 um 03:16 schrieb Pavel:
>>>>>>
>>>>>>> There is no system call in UNIX to wait for many conditions to be 
>>>>>>> met
>>>>>>> at once; but I do not see why it would be useful.
>>>>>>
>>>>>> poll() and wait() wait for at least one condition to be met.
>>>>> what does it have to do with what I wrote?
>>>>>
>>>>> Again, what a system call that waits for many conditions to be met at
>>>>> once can be useful for?
>>>>
>>>> select?
>>>
>>> I took Pavel to mean 'wait for all conditions to be true' rather than
>>> 'wait for one or more conditions to be true'.
>>>
>>
>> Ahhh. I missed that. Sorry everybody! ;^o
> NP, Scott is correct, this was about "wait for many conditions to be met 
> at once" that Bonita missed on Linux for some reason I still cannot get 
> or relate to.

It guess Bonita does not know that a predicate for a condition variable 
can contain many conditions.

[toc] | [prev] | [next] | [standalone]


#117730

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-09 08:01 +0100
Message-ID<uii048$238id$1@raubtier-asyl.eternal-september.org>
In reply to#117721
Am 09.11.2023 um 06:48 schrieb Chris M. Thomasson:

> Wait morphing can be highly beneficial.


I just checkes how many voluntary context switches I have under Linux
when having a poing-pong between two theads serving a common mutex and
individual condvars.

#include <iostream>
#include <thread>
#include <mutex>
#include <condition_variable>
#include <atomic>
#include <sys/resource.h>

using namespace std;

int main()
{
	mutex mtx;
	struct wait_t
	{
		bool signal;
		condition_variable cond;
	} waitA, waitB;
	constexpr size_t ROUNDS = 100'000;
	atomic<uint64_t> switches( 0 );
	auto thr = [&]( wait_t &waitMe, wait_t &waitYou )
	{
		for( size_t r = ROUNDS; r--; )
		{
			unique_lock<mutex> lock( mtx );
			while( !waitMe.signal )
				waitMe.cond.wait( lock );
			waitMe.signal = false;
			waitYou.signal = true;
			waitYou.cond.notify_one();
		}
		rusage ru;
		if( getrusage( RUSAGE_THREAD, &ru ) )
			terminate();
		switches += ru.ru_nvcsw;
	};
	waitA.signal = true;
	waitA.cond.notify_one();
	jthread
		thrA( thr, ref( waitA ), ref( waitB ) ),
		thrB( thr, ref( waitB ), ref( waitA ) );
	thrA.join();
	thrB.join();
	cout << switches << endl;
}

The code prints about ROUNDS * context switches, that's great.

[toc] | [prev] | [next] | [standalone]


#117731

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-09 08:01 +0100
Message-ID<uii052$238id$2@raubtier-asyl.eternal-september.org>
In reply to#117730
Am 09.11.2023 um 08:01 schrieb Bonita Montero:
> Am 09.11.2023 um 06:48 schrieb Chris M. Thomasson:
> 
>> Wait morphing can be highly beneficial.
> 
> 
> I just checkes how many voluntary context switches I have under Linux
> when having a poing-pong between two theads serving a common mutex and
> individual condvars.
> 
> #include <iostream>
> #include <thread>
> #include <mutex>
> #include <condition_variable>
> #include <atomic>
> #include <sys/resource.h>
> 
> using namespace std;
> 
> int main()
> {
>      mutex mtx;
>      struct wait_t
>      {
>          bool signal;
>          condition_variable cond;
>      } waitA, waitB;
>      constexpr size_t ROUNDS = 100'000;
>      atomic<uint64_t> switches( 0 );
>      auto thr = [&]( wait_t &waitMe, wait_t &waitYou )
>      {
>          for( size_t r = ROUNDS; r--; )
>          {
>              unique_lock<mutex> lock( mtx );
>              while( !waitMe.signal )
>                  waitMe.cond.wait( lock );
>              waitMe.signal = false;
>              waitYou.signal = true;
>              waitYou.cond.notify_one();
>          }
>          rusage ru;
>          if( getrusage( RUSAGE_THREAD, &ru ) )
>              terminate();
>          switches += ru.ru_nvcsw;
>      };
>      waitA.signal = true;
>      waitA.cond.notify_one();
>      jthread
>          thrA( thr, ref( waitA ), ref( waitB ) ),
>          thrB( thr, ref( waitB ), ref( waitA ) );
>      thrA.join();
>      thrB.join();
>      cout << switches << endl;
> }
> 
> The code prints about ROUNDS * context switches, that's great.
                                * 2

[toc] | [prev] | [next] | [standalone]


#117723

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-09 06:50 +0100
Message-ID<uihs01$22jil$1@raubtier-asyl.eternal-september.org>
In reply to#117712
Am 09.11.2023 um 06:39 schrieb Bonita Montero:
> Am 09.11.2023 um 06:35 schrieb Chris M. Thomasson:
> 
>> Wait morphing is a way that shows how interconnected a mutex actually 
>> is with a condition variable...
> 
> As you can derive from what I said I know what wait morphing is.
> I think wait morphing could be prevented unter systems supporting
> SysV seamphores by allocating a semaphore set of two semaphores
> for each mutex and leaving the second unused until you have a
> condition variable.
> 

Sorry, this dosn't work beyond one condvar per mutex.

[toc] | [prev] | [next] | [standalone]


#117757

FromPavel <pauldontspamtolk@removeyourself.dontspam.yahoo>
Date2023-11-11 17:45 -0500
Message-ID<nuT3N.20309$wvv7.18517@fx14.iad>
In reply to#117692
Bonita Montero wrote:
> Am 09.11.2023 um 05:42 schrieb Chris M. Thomasson:
>> On 11/8/2023 8:38 PM, Bonita Montero wrote:
>>> Am 09.11.2023 um 05:36 schrieb Chris M. Thomasson:
>>>
>>>> Humm... Are you okay Bonita? Anything wrong with you?
>>>
>>> Hoare monitors relase a waiting thread immediately after a notify()
>>> and that's less efficient.
> 
>> Yawn.
> 
> Re-acquiring the mutex part of a monitor after notify()
is exactly what Java does -- and it does it for reason.
> is an superfluous extra part that takes CPU time.

[toc] | [prev] | [next] | [standalone]


#117760

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-12 05:43 +0100
Message-ID<uipl56$3sugf$1@raubtier-asyl.eternal-september.org>
In reply to#117757
Am 11.11.2023 um 23:45 schrieb Pavel:
> Bonita Montero wrote:
>> Am 09.11.2023 um 05:42 schrieb Chris M. Thomasson:
>>> On 11/8/2023 8:38 PM, Bonita Montero wrote:
>>>> Am 09.11.2023 um 05:36 schrieb Chris M. Thomasson:
>>>>
>>>>> Humm... Are you okay Bonita? Anything wrong with you?
>>>>
>>>> Hoare monitors relase a waiting thread immediately after a notify()
>>>> and that's less efficient.
>>
>>> Yawn.
>>
>> Re-acquiring the mutex part of a monitor after notify()
> is exactly what Java does -- and it does it for reason.

No, Java and .net keep holding the mutex while doing a notify().
That's called a Mesa monitor.

>> is an superfluous extra part that takes CPU time.
> 
> 

[toc] | [prev] | [next] | [standalone]


#117761

FromKaz Kylheku <864-117-4973@kylheku.com>
Date2023-11-12 05:02 +0000
Message-ID<20231111205536.387@kylheku.com>
In reply to#117760
On 2023-11-12, Bonita Montero <Bonita.Montero@gmail.com> wrote:
> No, Java and .net keep holding the mutex while doing a notify().
> That's called a Mesa monitor.

I don't suspect that is part of Mesa semantics. (It's definitely part of
Hoare semantics.) Do you have a reference?

Since under Mesa semantics, threads re-acquire the mutex with fewer
guarantees and must re-test the desired condition, Mesa semantics
supports the more efficient protocol of signaling outside of the
monitor.

If you're using POSIX mutexes and conditions, you should call
pthread_cond_signal and pthread_cond_broadcast outside of the mutex,
whenever possible.

(In a nutshell, if you're going to be telling some thread(s) to go ahead
and grab a mutex, get the hell out of their way first).

-- 
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Mastodon: @Kazinator@mstdn.ca
NOTE: If you use Google Groups, I don't see you, unless you're whitelisted.

[toc] | [prev] | [next] | [standalone]


#117762

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-12 11:00 +0100
Message-ID<uiq7o0$1thb$1@raubtier-asyl.eternal-september.org>
In reply to#117761
Am 12.11.2023 um 06:02 schrieb Kaz Kylheku:

> I don't suspect that is part of Mesa semantics. (It's definitely part of
> Hoare semantics.) Do you have a reference?

Wikipedia (https://en.wikipedia.org/wiki/Monitor_(synchronization):
"With nonblocking condition variables (also called "Mesa style"
condition variables or "signal and continue" condition variables),
signaling does not cause the signaling thread to lose occupancy
of the monitor. Instead the signaled threads are moved to the e
queue."

> Since under Mesa semantics, threads re-acquire the mutex with fewer
> guarantees and must re-test the desired condition, Mesa semantics
> supports the more efficient protocol of signaling outside of the
> monitor.

This is a theoretical advantage. In fact, a combination of mutex
and condition variable, like a monitor implicitly is, is intended
for procuder-consumer patterns. And at this point it never happens
that you want to signal something but don't modify a common state.


> If you're using POSIX mutexes and conditions, you should call
> pthread_cond_signal and pthread_cond_broadcast outside of the
> mutex, whenever possible.

That actually never happens because you have to lock the mutex
anyway.

[toc] | [prev] | [next] | [standalone]


#117763

FromKaz Kylheku <864-117-4973@kylheku.com>
Date2023-11-12 17:18 +0000
Message-ID<20231112091106.817@kylheku.com>
In reply to#117762
On 2023-11-12, Bonita Montero <Bonita.Montero@gmail.com> wrote:
> Am 12.11.2023 um 06:02 schrieb Kaz Kylheku:
>
>> I don't suspect that is part of Mesa semantics. (It's definitely part of
>> Hoare semantics.) Do you have a reference?
>
> Wikipedia (https://en.wikipedia.org/wiki/Monitor_(synchronization):
> "With nonblocking condition variables (also called "Mesa style"
> condition variables or "signal and continue" condition variables),
> signaling does not cause the signaling thread to lose occupancy
> of the monitor. Instead the signaled threads are moved to the e
> queue."

That doesn't say that signaling *requires* the monitor to be held,
though!

>> Since under Mesa semantics, threads re-acquire the mutex with fewer
>> guarantees and must re-test the desired condition, Mesa semantics
>> supports the more efficient protocol of signaling outside of the
>> monitor.
>
> This is a theoretical advantage.

No it isn't. The signal operation can trap into a kernel, which can
require hundreds of cycles. The mutex/monitor should ideally be only
held only as long as necessary to protect the shared variables, and not
be extended over unrelated, lengthy operations. That encourages
unnecessary contention.

>> If you're using POSIX mutexes and conditions, you should call
>> pthread_cond_signal and pthread_cond_broadcast outside of the
>> mutex, whenever possible.
>
> That actually never happens because you have to lock the mutex
> anyway.

Pardon me, what is it that you believe doesn't actually happen? People
coding this:

  // ...

  pthread_mutex_unlock(&obj->mtx);
  pthread_cond_signal(&obj->foo_cond);

rather than this:

  // ...

  pthread_cond_signal(&obj->foo_cond);
  pthread_mutex_unlock(&obj->mtx);

?

-- 
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Mastodon: @Kazinator@mstdn.ca
NOTE: If you use Google Groups, I don't see you, unless you're whitelisted.

[toc] | [prev] | [next] | [standalone]


#117774

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-13 07:33 +0100
Message-ID<uisfvu$gsmo$1@raubtier-asyl.eternal-september.org>
In reply to#117763
Am 12.11.2023 um 18:18 schrieb Kaz Kylheku:

>> This is a theoretical advantage.

> No it isn't. ...

With this code singalling from inside is about 50% faster on
my 3990X Zen2 64 core PC under Ubuntu.

#include <iostream>
#include <thread>
#include <mutex>
#include <condition_variable>
#include <vector>

using namespace std;

int main( int argc, char ** )
{
	mutex mtx;
	condition_variable cv;
	constexpr uint64_t N_ITEMS = 100'000'000;
	atomic_uint64_t itemOutput( 0 );
	auto producer = [&]()
	{
		static atomic_uint64_t itemCounter( 0 );
		while( itemCounter.fetch_add( 1, memory_order_relaxed ) < N_ITEMS )
		{
			{
				unique_lock lock( mtx );
				itemOutput.fetch_add( 1, memory_order_relaxed );
				if( argc <= 1 )
					cv.notify_one();
			}
			if( argc > 1 )
				cv.notify_one();
		}
	};
	unsigned nProducers = jthread::hardware_concurrency() - 1;
	vector<jthread> procuders;
	procuders.reserve( nProducers );
	for( unsigned t = 0; t != nProducers; ++t )
		procuders.emplace_back( producer );
	uint64_t nextItem = 0;
	for( ; ; )
	{
		unique_lock lock( mtx );
		uint64_t lastItem;
		while( (lastItem = itemOutput.load( memory_order_relaxed )) < nextItem )
			cv.wait( lock );
		if( lastItem >= N_ITEMS )
			break;
		nextItem = lastItem;
	}
}

[toc] | [prev] | [next] | [standalone]


#117776

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-13 07:47 +0100
Message-ID<uisgpc$h32u$1@raubtier-asyl.eternal-september.org>
In reply to#117774
Sorry, the code worked, but I don't need an atomic:

#include <iostream>
#include <thread>
#include <mutex>
#include <condition_variable>
#include <vector>

using namespace std;

int main( int argc, char **argv )
{
	unsigned nProducers = jthread::hardware_concurrency() - 1;
	if( (int)nProducers <= 0 )
		return EXIT_FAILURE;
	mutex mtx;
	condition_variable cv;
	constexpr uint64_t N_ITEMS = 10'000'000;
	uint64_t itemOutput = 0;
	auto producer = [&, inside = argc <= 1]()
	{
		static atomic_uint64_t itemCounter( 0 );
		while( itemCounter.fetch_add( 1, memory_order_relaxed ) < N_ITEMS )
		{
			unique_lock lock( mtx );
			++itemOutput;
			if( inside )
				cv.notify_one();
			lock.unlock();
			if( !inside )
				cv.notify_one();
		}
	};
	vector<jthread> procuders;
	procuders.reserve( nProducers );
	for( unsigned t = 0; t != nProducers; ++t )
		procuders.emplace_back( producer );
	uint64_t nextItem = 0;
	for( ; ; )
	{
		unique_lock lock( mtx );
		uint64_t lastItem;
		while( (lastItem = itemOutput) < nextItem )
			cv.wait( lock );
		if( lastItem >= N_ITEMS )
			break;
		nextItem = lastItem;
	}
}

It's early in the morning ...

[toc] | [prev] | [next] | [standalone]


#117780

From"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Date2023-11-13 12:50 -0800
Message-ID<uiu26e$sper$1@dont-email.me>
In reply to#117776
On 11/12/2023 10:47 PM, Bonita Montero wrote:
> Sorry, the code worked, but I don't need an atomic:
[...]
> It's early in the morning ...

Yawn. Why not make sure it works _first_!?

[toc] | [prev] | [next] | [standalone]


#117788

FromBonita Montero <Bonita.Montero@gmail.com>
Date2023-11-14 06:20 +0100
Message-ID<uiv020$148s1$1@raubtier-asyl.eternal-september.org>
In reply to#117780
Am 13.11.2023 um 21:50 schrieb Chris M. Thomasson:
> On 11/12/2023 10:47 PM, Bonita Montero wrote:
>> Sorry, the code worked, but I don't need an atomic:
> [...]
>> It's early in the morning ...
> 
> Yawn. Why not make sure it works _first_!?

The first code worked but the atomic could be a normal uint64_t
since its access is surrounded by a mutex lock and unlock.

[toc] | [prev] | [next] | [standalone]


#117789

From"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com>
Date2023-11-13 21:21 -0800
Message-ID<uiv050$1462e$1@dont-email.me>
In reply to#117788
On 11/13/2023 9:20 PM, Bonita Montero wrote:
> Am 13.11.2023 um 21:50 schrieb Chris M. Thomasson:
>> On 11/12/2023 10:47 PM, Bonita Montero wrote:
>>> Sorry, the code worked, but I don't need an atomic:
>> [...]
>>> It's early in the morning ...
>>
>> Yawn. Why not make sure it works _first_!?
> 
> The first code worked but the atomic could be a normal uint64_t
> since its access is surrounded by a mutex lock and unlock.
> 

You mean a word wrt the arch, or uint64_t on a 32-bit system?

[toc] | [prev] | [next] | [standalone]


Page 6 of 13 — ← Prev page 1 … 4 5 [6] 7 8 … 13  Next page →

Back to top | Article view | comp.lang.c++


csiph-web