Skip to content

Instantly share code, notes, and snippets.

/*
複数のプロセスから排他的にデータをきします
またメタデータとしてバージョンやデータのダイジェストを保存することで 更新チェックを高速えるようにしています
- 読きのはメタデータにjavaのFileLock 取得されます
- メタデータのきは javaの MappedByteBuffer.force 使われます
データのみには byte[] load_if_update() 使います
まだデータをんだことがないか、最後んだあとに変更されていればデータをみます
/*
複数のプロセスから排他的にデータをきします
またメタデータとしてバージョンやデータのダイジェストを保存することで更新チェックを高速えるようにしています
- 読きのはメタデータにjavaのFileLock 取得されます
- メタデータのきは javaの MappedByteBuffer.force 使われます
データのみには byte[] load_if_update() 使います
まだデータをんだことがないか、最後んだあとに変更されていればデータをみます
@Override
public SharedPreferences getSharedPreferences(String name, int mode) {
SharedPreferencesImpl sp;
synchronized (sSharedPrefs) {
sp = sSharedPrefs.get(name);
if (sp == null) {
File prefsFile = getSharedPrefsFile(name);
sp = new SharedPreferencesImpl(prefsFile, mode);
sSharedPrefs.put(name, sp);
return sp;
private void loadFromDiskLocked() {
//(snip)
if (mBackupFile.exists()) {
mFile.delete();
mBackupFile.renameTo(mFile);
}
//(snip)
if (FileUtils.getFileStatus(mFile.getPath(), stat) && mFile.canRead()) {
//(snip) ここでファイルから読み込む
}
@tateisu
tateisu / gist:2814924
Created May 27, 2012 16:11
bash function returns array
#!/bin/bash
abc=(a b c)
for (( I=0; I < ${#abc[*]}; ++I ))
do
echo $I ${abc[$I]}
done
function func1(){
@tateisu
tateisu / compare-K30-K5.txt
Created July 2, 2012 23:55
K-5とK-30の比較
 DRIVE !      ∧_∧
          ( ,,・∀・)  僕を走らせる一眼。
          ( つ【◎】と)
         と_)_)       K-30
K-5よりK-30の方が優れている点
- ライブビューAFの改善
- 位相差AFの改善
- AF.A (AF.SとAF.Cを自動切り替えするモード)
- ローパスが薄くなり解像感が高まった。ノイズレベルはK-5とほぼ同等
@tateisu
tateisu / gist:3360557
Created August 15, 2012 14:23
数式を徐々に変化させるプログラム
#!perl
use utf8;
use warnings;
# ノードにランダムアクセスするための配列
my @list = ();
# 配列にノードを追加してそのインデクスを返す
sub add_node($){
my($node)=@_;
@tateisu
tateisu / gist:3495651
Created August 28, 2012 06:51
AlertDialogBuilderぽいものを作ってみた
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
@tateisu
tateisu / gist:3783381
Created September 25, 2012 17:47
AndroidのTwitterクライアントから共有されたツイート本文のパース
// twicca プラグインとして起動された場合
if( "jp.r246.twicca.ACTION_SHOW_TWEET".equals(intent.getAction()) ){
item.type_extra.put(TE_SCREEN_NAME,intent.getStringExtra("user_screen_name"));
item.type_extra.put(TE_STATUS_TEXT,item.body);
item.type_extra.put(TE_STATUS_ID,intent.getStringExtra( "id" ));
break;
}
Sep 26, 2012 12:37 At local FedEx facility KAWAGUCHI-SHI JP
Sep 26, 2012 11:44 In transit TOKYO-KOTO-KU JP
Sep 26, 2012 11:08 International shipment release - Import TOKYO-KOTO-KU JP
Sep 26, 2012 10:57 In transit TOKYO-KOTO-KU JP Package available for clearance
Sep 26, 2012 07:55 At destination sort facility NARITA-SHI JP
Sep 26, 2012 02:58 Departed FedEx location GUANGZHOU CN
Sep 26, 2012 02:00 In transit GUANGZHOU CN
Sep 25, 2012 23:20 Arrived at FedEx location GUANGZHOU CN
Sep 25, 2012 20:15 Left FedEx origin facility YUEN LONG HK
Sep 25, 2012 18:19 Picked up YUEN LONG HK Package received after FedEx cutoff