Jump to content

Der schöne Günther

Members
  • Content Count

    673
  • Joined

  • Last visited

  • Days Won

    12

Der schöne Günther last won the day on March 14

Der schöne Günther had the most liked content!

Community Reputation

310 Excellent

2 Followers

Technical Information

  • Delphi-Version
    Delphi 11 Alexandria

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Der schöne Günther

    Weird new IOS Issue-

    That site seems geolocked to the US, I only get an error 403. GeoPeeker - A tool for viewing sites from different geographic locations
  2. Der schöne Günther

    TChart Performance of whole form

    It has been a few years since we last tried to use TeeChart Pro on iOS/FMX but it was horrible. Drawing issues, performance was abysmal and power consumption was also pretty bad. In case you have an active subscription, you can raise an issue with Steema. If not, you're probably better off using a WebView and a free Javascript charting library.
  3. Der schöne Günther

    "for i in" goes in reverse

    In cases like this, I really love code editors and environments that can tell me right away to what type something infers by just tapping Ctrl+Alt...
  4. Der schöne Günther

    Colors, complementary, triadic

    "Finding" the other colours is just adding 180° (complementary) or 120° (triads) on the hue value of your HSL colour. Source: https://de.slideshare.net/slideshow/basic-color-theory-for-presentation-design-part-ii/53370835#44
  5. Der schöne Günther

    Colors, complementary, triadic

    Wouldn't it be sufficient to convert a RGB color to HSL? There is System.UIConsts.RGBtoHSL(..)
  6. Der schöne Günther

    Parallel.For optimization

    It seems like you are constantly resizing arrays (or creating new ones). I am not sure how much you can tweak/optimize the memory manager that ships with Delphi, but you might want to investigate other memory managers, like this fork of FastMM4: maximmasiutin/FastMM4-AVX: FastMM4 memory manager for Delphi and FreePascal (free pascal/Lazarus). A fork with improved synchronization between the threads that gives performance benefits on thread-heavy applications. Proper synchronization techniques are used depending on context and availability, i.e. umonitor/umwait, spin-wait loops, SwitchToThread, critical sections, etc (github.com)
  7. Der schöne Günther

    Thread leaks report (FastMM4)

    Most probably because it is like that in many other languages.
  8. Der schöne Günther

    Thread leaks report (FastMM4)

    I am absolutely bewildered. That is absolutely not true. See: Methods (Delphi) - RAD Studio (embarcadero.com) or: https://stackoverflow.com/a/39110161 This is the first time I ever heard something like this.
  9. Der schöne Günther

    Thread leaks report (FastMM4)

    I am astounded at both your claim that throwing exceptions in the constructor should generally be avoided.
  10. Der schöne Günther

    Essential Delphi Addins survey

    Under "File Management & Deployment" -> What is "Delphi Docker"? Is it related to Docker? Where can I find more information?
  11. Der schöne Günther

    Is there a way to check is the "user Idle" (no interaction)

    auto close or logout when no mouse activity - VCL - Delphi-PRAXiS [en] (delphipraxis.net)
  12. Der schöne Günther

    Speech to Text for Writing Code.

    I have tried the Windows 10 built-in "speech to text" for a disabled person, just for dictating simple texts, and it is absolutely abysmal. Meanwhile, Microsoft has acquired Nuance and its "Dragon" software, but I think its focus is nowhere on writing code by speech. Dragon - The World's #1 Speech Recognition Software | Nuance UK
  13. Der schöne Günther

    CTRL+C to a console app vs. TerminateProcess(..)

    I have a stupid question on how to "gracefully" terminate a Windows console application. I am not very familiar with how processes are established, how parent/child relationships are handled, consoles, all that. I might be missing basics. What I am doing: I have a central application with a VCL interface It uses CreateProcess(..) to invisibly spawn some console applications in the background Some are kept running 24/7, some are just started on demand, crunch some data, then terminate These console applications get their stdIn, stdOut and stdErr pipes redirected to some pipes I created in my central applications, so I can easily process their output, and control them (if they get controlled from stdIn). So far, everything worked like a breeze My issue now: I am now integrating another console application that just runs 24/7 and has no way of gracefully shutting it down It will only end on either pressing CTRL+C on a regular terminal, or by sending it a CTRL_BREAK_EVENT from my central application by using GenerateConsoleCtrlEvent. I know that Windows will "clean up" after the process has ended, but I am not sure if this way of shutting the process down is still a bit too "rude" My question: The documentation of the GenerateConsoleCtrlEvent function states "All console processes have a default handler function that calls the ExitProcess function." The documentation on ExitProcess gets into more detail of what it actually does, but I have a hard time understanding the implications. After sending the CTRL_BREAK_EVENT to the console application, my application will still give it a few hundred milliseconds to power down until it will resort to TerminateProcess but never has to, because the console application will finish within less than 5 ms. I am just unsure whether I am doing it right or maybe there is a better way of "gracefully" shutting down a console application that does not handle CTRL+C at all.
  14. Der schöne Günther

    What do you think of "Local Global variables"

    I think that is the whole point of these nested methods, that they can access all the local variables that were defined before them? I never use them. I have only seen them in some legacy code of ours, and in all cases it made a tangled mess of spaghetti even worse 🍝 I'm sure someone can find a valid use case, though.
  15. Der schöne Günther

    VCL Form Designer Zoom

    I remember this being the first question I posted, back in 2013, when I first started with Delphi 🥲 I couldn't believe there was no such thing, so I asked.
×