[ActionScript]curveToで楕円を描く

自分用メモです。
ActionScriptで楕円を描画する際、通常は drawEllipse を使いますが、drawPath や drawGraphicsData を使いたい場合があります。
こうしたとき、curveTo で円や楕円を描画しなければなりません。
中心が(x0, y0), 半径が(w, h)の楕円を curveTo で描画するプログラムは以下のような感じ。
(正円なら、w == h)
// 分割数
var seg:uint = 8;
var angle:Number = Math.PI / seg;
var angle2:Number = angle * 2;
var halfPI:Number = Math.PI / 2;
graphics.moveTo(x0 + w, y0);
for (var i:uint = 1; i < = seg; i++)
{
var r:Number = i * angle2;
[...]

Adobe Air SQLiteのロック処理

Adobe AirのSQLiteについて。
非同期実行モードでbegin~commit のトランザクション処理を行う際に、データベースに対してロック処理が行われるわけだけど、すでにロックが掛けられている状態で新たなロックが試みられた場合、エラーイベントが発生して処理が終わるんですね。
「現在ロックが掛けられている場合は、解放されるのを待って、解放されたら新たにロックする」という処理は、自分で実装しないといけないのか。
てっきり、自動でやってくれるものとばかり思っていました。
AirReaderのデータベース処理は同期実行モードで作っていたんですが、これを現在、非同期実行モードに改良しようとしています。
非同期実行モードでのデータベース操作というのは、なかなか面倒くさいですね。