Skip to content

Instantly share code, notes, and snippets.

View ledsun's full-sized avatar

shigeru.nakajima ledsun

View GitHub Profile
@ledsun
ledsun / gist:fdde69ee92330530b9eb51fa97fb8f3f
Created June 23, 2018 06:14
複数のスレッドで同一のlibxmjsを読み込むとエラーが起きる?
Error: Module did not self-register.
at Object.Module._extensions..node (internal/modules/cjs/loader.js:731:18)
at Module.load (internal/modules/cjs/loader.js:612:32)
at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
at Function.Module._load (internal/modules/cjs/loader.js:543:3)
at Module.require (internal/modules/cjs/loader.js:650:17)
at require (internal/modules/cjs/helpers.js:20:18)
at bindings (/Users/shigerunakajima/page-rank-for-qiita/node_modules/bindings/bindings.js:81:44)
at Object.<anonymous> (/Users/shigerunakajima/page-rank-for-qiita/node_modules/libxmljs/lib/bindings.js:1:99)
at Module._compile (internal/modules/cjs/loader.js:702:30)
@ledsun
ledsun / write-to-stream.js
Created April 4, 2018 01:20
NodeのStreamに10万回以上書き込むとメモリ使用量が増える
~ node write-to-stream.js 1
Write to a writable stream 1000 times
The script used approximately 4.82 MB
~ node write-to-stream.js 10
Write to a writable stream 10000 times
The script used approximately 6.15 MB
~ node write-to-stream.js 100
Write to a writable stream 100000 times
The script used approximately 19.12 MB
~ node write-to-stream.js 200
@ledsun
ledsun / users_controller.rb
Last active March 29, 2018 06:26
RailsのコントローラーでActiveModel::Validationsを流用する
class UsersController < ApplicationController
include ValidateAction
before_action :validate_and_return
validates :name, presence: true
def index
render json: User.where(name: params[:name])
rescue ActiveRecord::RecordNotFound
head 404
@ledsun
ledsun / check_amazon_link.js
Created October 23, 2017 06:26
リンクチェックのサンプル mochaとosmosisに依存。npx mocha check_amazon_link.jsで実行
@ledsun
ledsun / Dockerfile
Created August 14, 2017 04:29
Macで開発しているとcase-insensitiveなファイル名指定をしても、browserifyでコケなくて、linuxに持って行った時にコケるって現象が、たまに起きる。これをカジュアルにチェックしたい。
FROM node:alpine
RUN mkdir -p /app
COPY ./package.json /app/
WORKDIR /app
RUN npm install
COPY src /app/src
RUN mkdir -p ./public/js
@ledsun
ledsun / main.sh
Created June 14, 2017 05:28
NFDをNFCに一括置換する
grep -l -R [゛゙゜゚] . | ./nfd_to_nfc.sh
describe 'thread_test' do
it 'locks thdead' do
q = SizedQueue.new(1)
main = Thread.current
Thread.new do
begin
expect(1).to eq(0)
rescue => e
main.raise e
describe 'thread_test' do
it 'locks thdead' do
q = SizedQueue.new(1)
t = Thread.new do
begin
expect(1).to eq(0)
ensure
q.push ''
end
@ledsun
ledsun / opening.rb
Last active June 1, 2017 04:27
Rubyの非同期処理の結果をメインスレッドに戻す関数
def opening
queue = Queue.new
yield -> (result) { queue.push result }
queue.pop
end
it '結果が1であること' do
result = opening do |curtain|