SEARCH KEYWORD -- EXCEED
Practice of using spinlock instead of mutex
Spinlock and mutex are two important concepts in multithreading programs. They are used to lock some shared resource to prevent concurrent access which may affect data consistency. But they do have differences, what are the differences? when should we use spinlock instead of mutex? The Theory In theory, when a thread tries to lock a mutex and it does not succeed, because the mutex is already locked, it will go to sleep, immediately allowing another thread to run. It will continue to sleep until...
Spinlock,Mutex,Concurrency 2014-04-19 21:54:12
Apple is catching up with Samsung in smart connected device market
According to Sina Tech. IDC's latest report shows that as of the end of 2012, Samsung has a 21.2% share of the global market on smart connected devices which is #1. Apple has a 20.3% share which ranks #2. In smart connected devices market, Apple is catching up with Samsung. These devices include desktop computers, laptops, smart phones and tablet PCs. However, because of the higher prices, Apple is still far ahead of Samsung in revenue. As of the end of 2012, Apple's revenue accounts for 3...
The 9 lines of code of Google
Are you still remembering the then hot debated news about Oracle suing Google allegedly copying a small portion of codes from Oracle's Java in 2010. At that time, Oracle experts estimated that Google owes Oracle between $1.4 billion and $6 billion in damages if liable. But the court thought Oracle was eligible only for statutory damages for that copying, which were not expected to exceed a few hundred thousand dollars. At last, Oracle agreed the zero damage result. Are you curious about whi...
Google,Java,Open source 2014-08-15 20:29:52
UC browser won Readers' Choice Award
China's leading mobile Internet software technology and application service provider UC excellent, its flagship product, UC browser, following the 2011 recommended by the world's leading classified information site About.com named the Readers' Choice Award in best mobile browser category, is once again awarded by About.com as Reader's Choice Award in Best Android Browser category. UC browser comes out on top in the About.com selection in two consecutive years.About.com, a part of The New York T...
UC,About.com,Readers' Choice Aeard,2012 2012-04-03 08:08:03
How to optimize MySQL insert statement
For a big data system, one problem is the data access efficiency, one more problem is that the data insertion is very slow. We had a service system, the data loading process would take 4-5 hours. This time consuming operation is risky since if the program is interrupted during the loading process, it might be rerun, this will be troublesome. So it's necessary to improve the insertion efficiency for big data systems. Here we provide two optimization suggestions. 1. Combine multiple insert stateme...
MySQL,insert,optimization 2012-10-24 22:03:13
How to make select in WinSock exceed the 64-socket limit
When doing cross-platform network programming, the only API available on Windows that corresponds to the epoll/kevent style reactor event model is select. However, it has a limitation: the number of sockets passed into select cannot exceed FD_SETSIZE, which is set to 64. Therefore, select in Java’s NIO on Windows also has the same limit. Many services ported to Windows that use the reactor model face this constraint, which often gives the impression that server programs on Windows hav...
HeartBleed: Inside the heart, what causes the bleeding?
Just after a few weeks since Apple's famous goto fail bug, there is one bug in OpenSSL which catches the attention from the world again. The bug is named HeartBleed, found in OpenSSL library, a famous open source library supporting lots of SSL/TLS communication among server/client applications. The reason why this bug catches the attentions from the world is it affects almost all sites which are using the affected OpenSSL library, these includes many applications like Nginx server, some v...
OpenSSL,HeartBleed 2014-04-09 05:47:30
Why is single threaded Redis so fast
Redis is a high-performance, in-memory key-value database. According to official test reports, it can support around 100,000 QPS (queries per second) on a single machine. However, Redis uses a single-threaded architecture in its design. Why does Redis still have such high performance with a single-threaded design? Wouldn't it be better to use multiple threads for concurrent request processing? In this article, let's explore why Redis has a single-threaded architecture and still maintains its spe...
REDIS,SINGLE-THREADED,MULTI-THREADING 2023-02-28 05:16:22
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
A plugin to update last_error in Delayed Job
delayed_job is a process based asynchronous task processing gem which can be ran at background. It will fork the specified number of processes to execute the tasks asynchronously. The task status is usually stored in the database so that it can be easily integrated into a Rails application where asynchronous job execution is desired. Normally when a job fails to execute or error occurs, it would save the error into the database with the column last_error. Ideally all these will be handled b...
RUBY,RUBY ON RAILS,DELAYED JOB,LAST_ERROR 2017-11-18 13:05:49
RECENT
- How Artificial Intelligence Is Helping Fight Environmental Challenges
- How to Deal with Accusations of Negligence as a Business
- Google's Business Operations in China Amid Antitrust Scrutiny
- Deploying DeepSeek-R1 Locally with a Custom RAG Knowledge Data Base
- Balancing Convenience and Security in the Digital World
- My AI Learning Journey: Exploring the Future of Technology
- Power Grid Simulation System 02 : FDI Power Outage Attack Case Study
- Be Careful When Using Cursor to Help Build Application
- Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
- Understanding Cursor and WindSurf's Code Indexing Logic
- more>>