SEARCH KEYWORD -- Complexity



  Eight C++ programming mistakes the compiler won’t catch

C++ is a complex language, full of subtle traps for the unwary. There is an almost infinite number of ways to screw things up. Fortunately, modern compilers are pretty good at detecting a large number of these cases and notifying the programmer via compile errors or warnings. Ultimately, any error that is compiler-detectable becomes a non-issue if properly handled, as it will be caught and fixed before the program leaves development. At worst, a compiler-detectable error results in los...

   C++,Compiler,Error detection     2012-04-08 09:55:20

  Android Security

Android is an open source mobile platform that includes an operating system, middleware and applications. Android has revolutionized the mobile world in a big way. Android, which started as an alternative to Apple’s iOS, is now slowly eating into the market share of Apple and is of primary concern to the company. Let’s have a brief introduction about android and then look into the security concerns and vulnerabilities that need to be focused on. Android Introduction: Android was deve...

   Android security,Input validation     2013-04-16 12:19:37

  Understand GoLang WaitGroup internals and how it works

Background Before getting into the main content, let me give a brief introduction to WaitGroup and its related background knowledge. Here, the focus is on the basic usage of WaitGroup and the fundamental knowledge of system semaphores. For those who are familiar with these, you can skip this section directly. WaitGroup WaitGroup is one of the most common concurrency control techniques in Golang, and its function can be roughly compared to the join() in concurrency control of other languages' mul...

   GOLANG,WAITGROUP,SOURCE CODE     2023-04-26 08:02:01

  What is pjax and why we should use it?

What is pjax? Now many websites such as Facebook, Twitter support one browsing style which is when you click one link on their sites, the page will not be redirected, instead only the page contents are updated and URL on address bar is changed. This kind of user experience is much better compared to load the whole page with a blink. There is one important component in the above browsing experience, these websites' AJAX refresh support browser history, when refreshing the page, the address on the...

   pjax,AJAX,history     2013-04-23 12:22:37

  OT Railway System Development: How to Use PLC to Implement Land Based Railway Track Fixed Block Sign

Figure-00: Railway fixed block signaling system over view diagram, version v1.3 (2024) Project Design Purpose: This project aims to use Programmable Logic Controllers (PLC) with train detection sensors and train control signals to develop an automated OT system for railway track fixed block signaling control. The system will include a digital equivalent simulation to explain the logic of the track fixed block Automatic Train Control (ATC) mechanism for demonstration and training purposes. In th...

       2024-07-27 04:08:41

  9 Ways to Create Thread Pools with Java Executors

In Java, the Executors class provides a variety of static factory methods to create different types of thread pools. When learning about thread pools, the Executors class is indispensable. Mastering its usage, principles, and scenarios will enable you to apply it smoothly in actual project development. Here are some commonly used methods, which I will explain one by one: newCachedThreadPool(): Creates a cached thread pool. If a thread has not been used for 60 seconds, it will be terminated and ...

   TUTORIAL,JAVA THREAD     2024-07-19 23:07:09

  New Unreal Engine 5 and Nvidia Technology in Black Myth: Wukong

In this article, we explore the cutting-edge Unreal Engine 5 and Nvidia GPU technologies used in the highly anticipated AAA game Black Myth: Wukong this year to enhance its game graphical quality. Our insights are based on an interview article of the technical lead of Game Science Interactive Technology, Geekerwan's experimental analysis, and Nvidia's official Black Myth: Wukong showcase featuring the RTX 40xx series. As a software engineer, my perspective may differ from that of a game develop...

       2024-08-24 09:32:55

  Do Not Be Misled by ‘Build an App in 5 Minutes’: In-Depth Practice with Cursor

In August this year, I tried out Cursor and was thoroughly impressed, prompting me to write an introductory article about it. Soon after, I transitioned my daily work environment entirely from GitHub Copilot + JetBrains to the paid version of Cursor. After several months of use, it has felt incredibly smooth. While using it myself, I’ve often recommended Cursor to colleagues and friends. However, many of them still have questions, such as: What advantages does it have over native ChatGPT ...

   ARTIFICIAL INTELLIGENCE,GUIDE,CURSOR,CODE EDITING,WINDSURF,DISCUSSION     2024-12-17 21:30:22

  4 deployment modes of Redis

As a high-performance in-memory database, Redis is widely used in current mainstream distributed architecture systems. To improve system fault tolerance, using multiple instances of Redis is also inevitable, but the complexity is much higher than that of a single instance. This article mainly introduces the four deployment modes of Redis and their advantages and disadvantages. Standalone Standalone mode is to install a Redis, start it, and business connects to it and that's all. The specific ...

   REDIS,STANDALONE,MASTER-SLAVE,SENTINEL,CLUSTER     2023-03-03 21:35:09

  Why (offset, limit) is slow in database select?

Starting from a problem Five years ago when I was working at Tencent, I found that MySQL request speed was very slow in the pagination scenario. With only 100,000 data, a select query on a single machine took about 2-3 seconds. I asked my mentor why, and he asked in return, "In an indexing scenario, what is the time complexity to get the nth largest number in MySQL?" The pursuit of the answer Confirming the scenario Assuming there is an index on the "status" column, a query like "select * from t...

   SLOW,LIMIT,OFFSET,MYSQL     2023-03-12 05:21:02