SEARCH KEYWORD -- Sleep
The magic of go:linkname
When writing Go program, there is frequent need on using time.Sleep() function to pause the logic for some time. And if jumping to the definition of this function, can see below definition: // Sleep pauses the current goroutine for at least the duration d. // A negative or zero duration causes Sleep to return immediately. func Sleep(d Duration) I's strange that there is no function body defined here. What happened? The actual definition of the function body is residing at runtime/time.go&nb...
TRICKS,GO:LINKNAME,GOLANG 2022-04-10 08:39:00
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
A Javascript When Function
function when(conditionFunc, execFunc, interval){ if (conditionFunc()){ execFunc(); }else{ setTimeout(function(){ when(conditionFunc, execFunc, interval);}, interval); } } You have some code which should only execute when a condition is true. E.g. You have code which relies on a javascript library but can't be sure the library has loaded yet and don't want the code to execute until it has. This is common if you have a bookmarklet which injects more than one <...
JavaScript,When,Implementation,When function 2012-02-24 05:08:34
Why can System.out.println be used to exit while loop
Let's first take a look at one simple Java thread code snippet which is supposed to exit the while loop after the first loop run. public class StopThread { private static boolean stopRequested; public static void main(String[] args) throws InterruptedException { Thread backgroundThread = new Thread(new Runnable() { @Override public void run() { int i = 0; while (!stopRequested) { i++; } } }); backgroundThread.start(); TimeUnit.SECONDS.sleep(1); stopRequested = true; } } But the tr...
How Many Hours Can a Programmer Program?
I am a little late to this party where Michael Arrington says that startups mean working hard and sleeping under your desk. But I will add a few words. I read a lot of commentary about how such death marches can be counter-productive and ultimately unsuccessful, and also the real dangers they pose to the well-being (short-term and long-term) of the lives of the programmers. But I didn’t see many people actually do a quantitative analysis. So here it is. Your average working day...
Programmer,Working hour,Efficiency 2012-01-28 07:17:17
A trick of building multithreaded application on Solaris
Firstly, Let’s see a simple multithreaded application: #include <stdio.h> #include <pthread.h> #include <errno.h> void *thread1_func(void *p_arg) { errno = 0; sleep(3); errno = 1; printf("%s exit, errno is %d\n", (char*)p_arg, errno); } void *thread2_func(void *p_arg) { errno = 0; sleep(5); printf("%s exit, errno is %d\n", (char*)p_arg, errno); } int main(void) { pthread_t t1, t2; ...
Three ways to define class in JavaScript
In object oriented programming, class is the template of object, it defines the properties and methods of a group of objects. Unfortunately, JavaScript doesn't support class, but we can have some workarounds to simulate class.1. Constructor functionThis is the classical approach, it is also the approach mentioned in many text books. It uses the constructor function to simulate class and it uses the keyword this to represent the object internally.function Cat() {  this.name = "Kelly...
JavaScript,Class,Method,Private,Inheritance 2012-07-09 11:59:51
Easy Parallel Processing in PHP
The proliferation of multicore CPUs and the inability of our learned CPU vendors to squeeze many more GHz into their designs means that often the only way to get additional performance is by writing clever parallel software. One problem we were having is that some of our batch processing jobs were taking too long to run. In order to speed the processing, we tried to split the processing file into half, and let a separate PHP process run each job. Given that we were using a dual core serv...
PHP,Parallel processing,Multithreading like,Sleep 2011-12-12 10:58:59
PHP to get long running process progress dynamically
Frequently in web applications, we may have a request to the back end system which may trigger a long running process such as searching huge amount of data or a long running database process. Then the front end webpage may hang and wait for the process to be finished. During this process, if we can provide the user some information about the progress of the back end process, it may improve user experience. Unfortunately, in web applications, this seems not an easy task because web scripting lang...
AJAX,PHP,progress,long process,demo 2012-06-04 07:29:37
Microsoft announces new Microsoft Band
Microsoft just announced a new Microsoft Band on a new product release event held in New York today. This new device is the second generation of the smart wearable device since the first generation announced around 1 year back(29 October, 2014). The biggest change of the new Microsoft Band is that it has a whole new design with curved screen. It now can be better adept to our body structure. In addition to this, there are a few other features as well. Below is a list of the features this new Mi...
MICROSOFT BAND 2,MICROSOFT 2015-10-06 09:51:41
RECENT
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- GoLand connect to Hologres
- A journey to investigate a goroutine leakage case
- Understanding Slice Behavior in Go
- Breaking Barriers: How 3D Printing is Democratizing Product Development
- The Power of Efficiency: 10 Practical Energy-Saving Tips for Tech Startups
- more>>