RentrantLock is more flexible than synchronized. When using synchronized, the thread will be blocked if the lock cannot be obtained. If RentrantLock is used, the above problem will not occur. We can use the tryLock method to try to obtain the lock and process our own business logic by obtaining the result.
we can use Iterators.cycle of guava to implement round robin. Here is an example.
Use follow command to list all services in CentOS7.
Use the following command to output the result of the wget command to the screen instead of saving it to a file.
The default home directory of the Maven project in IDEA is Bundled(Maven 2) or Bundled(Maven 3). I am used to using my own Maven home directory. So, every time I create a new project, I will change this default Maven home directory. It is too much trouble. After reviewing the official documentation, I learned that the default new project settings can be changed.
Before starting to learn this command, we need to initialize a git directory. The following script can help us initialize a git repository with 20 commits
If you want download artifacts faster you need to configure maven setting.xml file.
Following these steps to enable PostgreSQL remote access.
It is no way to use service postgresql-9.4 initdb init PostgreSQL in CentOS7. I use following commends.
It is easy to dump database by using pg_dump commend.
This is an interview question. Not fully understood yet. ;(
The biggest advantage of the Bloom filter is that his space usage is very high. His disadvantage is that there may be misjudgments. Bloom filters return two values: elements may exist and elements definitely do not exist.
Benchmarking Redis is very easy. After completing the redis installation, there is a command tool in his directory to perform benchmark tests. Here is a simple example.
There are four different types of references in Java.
It is very simple to read files using the tool classes in guava. Here is the example.