Skip to content

Instantly share code, notes, and snippets.

@mhakeem
mhakeem / producer-consumer.rb
Created January 23, 2019 21:31 — forked from deric/producer-consumer.rb
Producer-consumer in Ruby
require 'monitor'
queue = []
queue.extend(MonitorMixin)
cond = queue.new_cond
consumers, producers = [], []
for i in 0..5
consumers << Thread.start(i) do |i|
print "consumer start #{i}\n"
# user and group to run as
user ez ez;
# number of nginx workers
worker_processes 6;
# pid of nginx master process
pid /var/run/nginx.pid;
# Number of worker connections. 1024 is a good default
@mhakeem
mhakeem / deep_struct.rb
Created September 1, 2016 05:34 — forked from brodock/deep_struct.rb
json to struct
require 'ostruct'
class JsonStruct < OpenStruct
def initialize(hash = nil)
@table = {}
@hash_table = {}
return unless hash
hash.each do |k, v|
recursive_initializer(v) if v.is_a?(Array)
require 'ostruct'
class JsonStruct < OpenStruct
def initialize(hash=nil)
@table = {}
@hash_table = {}
if hash
recurse = Proc.new do |item|
@mhakeem
mhakeem / .tmux.conf
Created December 15, 2015 09:46 — forked from mjswensen/.tmux.conf
Friendlier, Tab-style tmux Status Bar
set-window-option -g status-left " #S "
set-window-option -g status-left-fg black
set-window-option -g status-left-bg white
set-window-option -g status-right " %H:%M %d-%b-%y "
set-window-option -g status-right-fg black
set-window-option -g status-right-bg white
set-window-option -g window-status-format " #I: #W "
sudo aptitude install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev
sudo apt-get install libxslt-dev libxml2-dev
sudo apt-get install libmysqlclient-dev ruby-dev
sudo apt-get install libcurl4-openssl-dev
sudo apt-get install imagemagick libmagickcore-dev libmagickwand-dev
sudo apt-get install libsqlite3-dev
sudo apt-get install libreadline-dev
### Install Java ###
sudo apt-get install openjdk-6-jre-headless