• Home
  • Data privacy / Datenschutz
  • About me
  • Legal notice / Impressum
Software development and other things

Month: July 2011

  • Concurrency
  • ...
    • Java

How to use java.util.concurrent.CountDownLatch

Posted on July 24, 2011March 16, 2017by Markus Jais

With some applications that use several threads there are situations where one thread can only start after some others have completed. For example, image a program that downloads a bunch of web pages, zips them and send then the zip file via email. If you program this in a multithreaded way, the thread that zips […]

Read More
  • Java
  • ...
    • Scala

BitSets in Scala are much more fun than in Java

Posted on July 10, 2011March 16, 2017by Markus Jais

Recently I played with BitSets in Java because I needed an efficient way to store huge amounts of long values. For Java there is the java.util.BitSet class. It is a very efficient implementation when you only need to store bit values. Here is a trivial example on how to use it: import java.util.BitSet; public class […]

Read More

Categories

  • Books
  • C/C++
  • Concurrency
  • Functional Programming
  • General
  • Java
  • Linux System Programming
  • NoSQL
  • Python
  • reviews
  • Ruby
  • Rust
  • Scala

Recent Posts

  • Good names and types are the foundation of good software design
  • Unterstanding Rust’s Vec and its capacity for fast and efficient programs
  • Book review: Rust Essentials
  • Book review: MongoDB – The Definitive Guide, 2nd edition
  • Video review: Functional Thinking by Neal Ford, O’Reilly Media

Recent Comments

    Archives

    • January 2019
    • November 2016
    • July 2015
    • August 2013
    • May 2013
    • December 2012
    • September 2012
    • August 2012
    • April 2012
    • December 2011
    • November 2011
    • September 2011
    • August 2011
    • July 2011
    • June 2011
    Activello Theme by Colorlib Powered by WordPress

    By continuing to use the site, you agree to the use of cookies. more information

    The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

    Close