投稿数 - 437, コメント - 53176, トラックバック - 156

This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

知っての通り、マネージスレッドは必ずしも Win32 スレッドではない。ホストが SQL Server の場合には「マネージスレッドはファイバだ」と言い切っている(※1)。マネージスレッドの正体がファイバだったら、どういった問題があるのだろうか?

TLS(スレッドローカルストレージ)の扱いが微妙になる。当然の事ながら、ファイバでは TLS は機能しない。しかし、マネージコードは巧くやっているのでマネージ TLS は使える。「スレッドセーフだと謳っているアンマネージコード」をマネージコードから使用する際には注意が必要だ。「スレッドセーフだと謳っている機能」がアンマネージ TLS に依っていてはアウトである。

セマフォやミューテックスなどの同期カーネルオブジェクトも微妙になる。「別のスレッドかと思いきや同じスレッドでした」という事になりかねない。同期もクソもないのである。これまた、マネージセマフォやマネージミューッテクスは巧くやってくれているのだろう。

P/Invoke、CCW を使えばアンマネージコードとの連携は簡単だよ、とは軽はずみには言えない。

 

※1 コード分析が言い切っている(相変わらず意味不明な訳だが)。但し、ファイバモードの場合だけだと思われる。参考 lightweight pooling オプション

投稿日時 : 2007年3月30日 0:03

フィードバック

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

こんな機能余程の変態以外は使わないよなと思いつつ,ICLRTask::SwitchOut にときめいていた時期が私にもありました.
http://blogs.msdn.com/dinoviehland/archive/2005/09/15/469642.aspx
2007/03/30 0:39 | NyaRuRu

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

ファイバ自体は,
スレッドがファイバ化した後に実行されるのと,
同スレッド内のファイバ呼び出しも,別スレッドのファイバ呼び出しも
"順繰り" にしか実行されないので,
同期しようという心配自体が無意味(useless)で,
逆に,同期の心配が必要ないので,何気なく,
別スレッドのファイバも呼び出される(SQL Serverがそうする可能性がある)ので,
スレッドごとのスタックに依存していると別の意味で落とし穴にはまるという話なのでは。
2007/03/30 2:06 | 稍丼

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

あと,訳が間違っていて,

-----

「マネージ スレッド ローカル ストレージの使用は有効ですが、アンマネージ スレッド ローカル ストレージは使用できません。また、コードが現在の OS スレッドで再度実行されるとは限りません。」

は,

「マネージ スレッド ローカル ストレージの使用は有効ですが、アンマネージ スレッド ローカル ストレージは使用してはいけません。使用する場合は、あなたが書いたコードが、再び、現在の OS スレッドで実行されることを前提としなさい。」

-----

「これらの設定をスレッドのロケールのように変更しないでください。」

は,

「スレッドのロケールの類の設定を変更してはいけません。」
2007/03/30 2:59 | 稍丼

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

FLS(Fiber Local Storage)なんてものもあるけどね…(どのみちマネージで使っちゃいけないけど)。
2007/03/30 9:17 | シャノン

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

>NyaRuRu さん

参考 Url ありがとうございます。熟読させていただきます。
私から見たら NyaRuRu さんは余程の変態です^^;
早く NyaRuRu さんレベルの変態の域に達したいものです。

>稍丼 さん

正しい訳ありがとうございます。すっきりしました。

通常、ファイバは自分でスイッチできるので同期の心配はないと思いますが、そのスイッチを SQL Server 或いは CLR がやっているので同期の心配が必要で、同期をとろうにも別ファイバが同スレッドの場合に問題ありと理解したのですが違ったでしょうか。

>「マネージ スレッド ローカル ストレージの使用は有効ですが、アンマネージ スレッド ローカル ストレージは使用してはいけません。使用する場合は、あなたが書いたコードが、再び、現在の OS スレッドで実行されることを前提としなさい。」

元の間違った訳もそうですが、ファイバは属するスレッドが変わるという事でしょうか?それがどうも理解しづらいです。

>シャノンさん

お~、Windows Vista からの新機能っぽいですね。
2007/03/30 21:40 | 囚人

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

確かに,
訳を正しく訳しても,具体的に,
TLSがどういうときに問題となるのかがわからないですね。

----
[信頼性の警告] なので,
TLSの性質として,
該当スレッド(例えば,SQL CLRでのストアドが走っているスレッド)が
他のスレッド(例えば,SQL Server側)から停止された時は,
TLSは,そのまま残ってしまうというものがあるので,
そこに注意という意味かなとも思うんですけど...。
2007/03/30 23:45 | 稍丼

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

Threadクラスは,.NET Framework 2.0 から,
CriticalFinalizerObjectから派生しているので,
ファイナライズ時に ExitThread されそうです。
でも,ファイナライズ用のスレッドは,別スレッドであるのと,
囚人さんが,ブログで書かれていたWinFormのような
ハンドルを握っている間はGCされないというようなカラクリは,
Threadクラスにはなさそうなので,
使われるAPIは,TerminateThread なのでしょう。
(internalcallなのでわからないのだけど)

だとしたら,
SafeHandle系のクラスといっても,TLS関係は,あてにならなくなってしまいます。
TerminateThread だと TLSは解放されないからです。

なので,.NETでは,そもそもTLSは使ってないんだろうと,よく見ると,
LocalDataStoreMgr
LocalDataStore
LocalDataSlot なんてものが。

マネジドスレッドがWin32スレッドとは別物と言われているのは,
Win32スレッドを単純にラップしたクラスではなく,
このあたりが違っているから別物と言っているんじゃないかと思います。
2007/03/31 3:38 | 稍丼

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

そう言えば、TLS の解放が必要ですね。
ファイナライザが必要な段階だとスレッドが既に終了してなければならないような気がしますが、実際のところ何をしているのか気になります。TerminateThread の呼び出しだけなら TLS が解放されないので、ファイナライザで TLS の処理も行っているのかもしれません。

>マネジドスレッドがWin32スレッドとは別物と言われているのは,
>Win32スレッドを単純にラップしたクラスではなく,
>このあたりが違っているから別物と言っているんじゃないかと思います。

ん~、深いですね。もう少し突っ込んで調べてみたいと思います。
2007/03/31 23:24 | 囚人

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

> お~、Windows Vista からの新機能っぽいですね。

ううん、2003から。
2007/04/01 21:09 | シャノン

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

あ~、Server は 2003 からですね。
2007/04/01 21:14 | 囚人

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

ここ
Be aware: FLS-Fiber Local Storage
http://blogs.msdn.com/slavao/archive/2005/02/28/381649.aspx
を見ると,

You will be surprised how many libraries leverage TLS and don't work correctly with Fibers.
「いかに多くのライブラリがTLSを利用しているか,そして,ファイバとはうまく動かないということにあなたは驚くことでしょう。」
で,
「リストに含まれるものは」 とあって...

COM
RPC
Side by Side
Older versions of CRT
Windows synchronization: Critical Section & Mutex
...

なんだか総崩れの形になってますね。

最初の話に戻ると,
すくなくとも,SQL CLR では,ファイバなので,
> P/Invoke、CCW を使えばアンマネージコードとの連携は簡単だよ、
> とは軽はずみには言えない。
となりますね。
2007/04/02 10:25 | 稍丼

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

ファイバとスレッドの件ですが,
情報が古いのと,私はまったく理由はわからないんですが,
http://support.microsoft.com/kb/163449/en-us
の一番下のところによると,

In Fiber mode, the physical thread can be changed for many reasons, making any TLS unsafe.

「ファイバモードでは,物理スレッドは,多くの理由が原因で,変わることがあり得ます。その結果,どのTLSも安全ではなくなります」

とあるので,ストアド内で,別のストアドを呼び出して返ってきたら,
別スレッドだったなんてことがあるようですね。
2007/04/02 11:17 | 稍丼

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

yield return の実装が気になる。
2007/04/02 12:21 | シャノン

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

Implementing Coroutines for .NET by Wrapping the Unmanaged Fiber API
http://msdn.microsoft.com/msdnmag/issues/03/09/CoroutinesinNET/default.aspx

Fibers and Threads
のところに

Many fibers can be scheduled on the same thread, and a fiber can also move between threads.

「多数のファイバが同じスレッド上でスケジューリングされることが可能で,しかも,いずれのファイバもスレッド間を移動することもまた可能である」

とありますね。
なので,なんらかの理由でSQL Serverがそうすることもありえるということのようですね。

# a fiber の a は,「ある」 でなく,総称表現の a でしょう。
# 「いずれのファイバも / ファイバというものは」
2007/04/02 14:20 | 稍丼

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

ここで言うファイバとは、Win32 API が CreateFiber 等の API によって提供するファイバのことなのだろうか?
それとも、独自に実装されたコルーチンのことなのだろうか?

前者だとすると、
> いずれのファイバもスレッド間を移動することもまた可能である
そんな Win32 API は見当たらないのだけれど…

「CLRのファイバモード」と言う時は、後者を指しているんだろうなぁ。
2007/04/02 19:16 | シャノン

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

>稍丼さん。

貴重な情報を本当にありがとうございます。熟読させていただきます。

>なんだか総崩れの形になってますね。

ぬぬぬ。想像以上ですね。

>「ファイバモードでは,物理スレッドは,多くの理由が原因で,変わることがあり得ます。その結果,どのTLSも安全ではなくなります」
>「多数のファイバが同じスレッド上でスケジューリングされることが可能で,しかも,いずれのファイバもスレッド間を移動することもまた可能である」

どうやっているんでしょうね。恐らく SQLOS が何かやってるんでしょうけど、高度過ぎて私にはかなり難解です。要調査します。

> シャノンさん
>yield return の実装が気になる。

yield return はコルーチンっぽいですが、実は…。
追々、これに絡めて記事にしていきます。

>ここで言うファイバとは、Win32 API が CreateFiber 等の API によって提供するファイバのことなのだろうか?
>それとも、独自に実装されたコルーチンのことなのだろうか?

SQL Server のスレッド自体が何か怪しいんでしょうか。SQLOS の深部を理解しないと分からないのかな。
2007/04/02 20:26 | 囚人

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

> yield return はコルーチンっぽいですが、実は…。

ΩΩΩ<な、なんだってー!?

http://www.atmarkit.co.jp/fdotnet/special/cs20review02/cs20review02_03.html
2007/04/02 20:45 | シャノン

# re: This is CLR - マネージコードとアンマネージコードの連携は簡単ではない

>ΩΩΩ<な、なんだってー!?

っておい!(笑)
書いちゃったよ^^;
2007/04/02 21:00 | 囚人

# Times are changing for the btteer if I can get this online!

Times are changing for the btteer if I can get this online!
2012/01/29 2:58 | Bettie

# Times are changing for the btteer if I can get this online!

Times are changing for the btteer if I can get this online!
2012/01/29 2:58 | Bettie

# Times are changing for the btteer if I can get this online!

Times are changing for the btteer if I can get this online!
2012/01/29 2:58 | Bettie

# juicy couture earrings
395873645

The author Cameron provides designed many write-up like.This artilce Converse Footwear or boots on Sale is among the right 1 and far much more intriguing write-up. The Ile of Cuba, Michael Kors Outlet Online which is as farr in lengthe as from Valladolid untill Rome, ys at this Michael Kors Outlet day, mainly because it were being, all squander 179 Franklin Road, doing the job each of the time and now beginning new calculations, only interrupting his function when he michael kors handbags wished to expend a michael kors sale purses social night with Mrs And continue to more significant it appeared when it was known right after inquiry that no orders had been despatched to the gun foundries or powder michael kors michael kors women watches occupations factories, or maybe the michael kors girls watches factories which make chemical merchandise in possibly with the two continents Jenynges and Mr Briefly, Mrs Maston pressed his iron hook on his michael kor forehead

Inside of our every single day present footwear signifies a crucial role considering that with this entire world some people don footwear or boots for quite a few prospects to as an example protecting toes though having fun with a wander or just savoring, guarding from the climatic conditions and regardless of whether or not, Versace sunglasses inexpensive converse all star wholesale

Apart from the best leather-based sneakers that the converse all star womens can deliver, there are several other varieties of converse shoes for gentlemen that are available with the firm. All that you are desired to do is pay a visit to the outlet from the firm and make a selection for by yourself. And if you do not have an outlet anywhere around your house, then the best thing that you can do is to make positive that you log onto the web-site on the company, chose from among the kinds that are on offer you, and then area the invest in. And apart from that they would also make certain that you would get these pair of footwear at the spot that you want. Conseils pour l?ユ?chat des Chaussures Converse. Converse Outlet Trouver des chaussures extra-large pour les hommes ou les femmes n?ユ?st pas vraiment difficile. Ceux qui sont la recherche de grands magasins de chaussures de largeur pour l?ユ?chat de ces chaussures in addition massive de montage n?ユ獣nt pas s?ユ?nquiter. Pas tous les magasins de chaussures ont ces chaussures de furthermore grande largeur disponible, mais on peut toujours les trouver si ils savent o chercher.

Conseils pour l?ユ?chat des Chaussures Converse. Converse Online Trouver des chaussures extra-large pour les hommes ou les femmes n?ユ?st pas vraiment difficile. Ceux qui sont la recherche de grands magasins de chaussures de largeur pour l?ユ?chat de ces chaussures moreover large de montage n?ユ獣nt pas s?ユ?nquiter. Pas tous les magasins de chaussures ont ces chaussures de furthermore grande largeur disponible, mais on peut toujours les trouver si ils savent o chercher. Ces chaussures larges sont bnfiques en plus d?ユ獪n titre. Ces chaussures larges sont bons pour les pieds les orteils permettant un espace suffisant pour bouger et respirer. Crampes aux pieds et les orteils bring about de nombreux problmes comme les oignons, et donc l?ユ?helle des chaussures de montage sont autant pour le confort des pieds que pour le type qu?ユ?ls peuvent offrir. Voici quelques conseils pour trouver les bons endroits pour acheter ces chaussures larges montage.

http://fakemichaelkors.mblog.my/2019/04/16/recommendations-on-the-best-way-to-build-the-top-bug-out-bag/
http://hermesbag.id.st/the-right-sporting-routines-resources-bag-for-you-personally-a161830130
http://www.chicagobd.com/company/Hermes-Kelly-Mini-Bag-Epsom-Leather-Gold-hardware-In-Sky-Blue_18228658/
http://hermesbag.lo.gs/tips-about-how-to-build-the-most-beneficial-bug-out-bag-a161830108
https://hermes-bag.hatenablog.com/entry/2019/04/16/143026
https://social.wikitechguru.com/2019/04/08/hermes-kelly-mini-bag-epsom-leather-gold-hardware-in-sky-blue/
http://hermesbag.lo.gs/rectangular-sleeping-baggage-a161830114
https://fakehermes.blog.fc2.com/blog-entry-5.html
http://hermesbag.freeblog.biz/2019/04/17/3-important-procedures-for-finding-an-excellent-big-bag/
https://fakehermes.blog.fc2.com/blog-entry-6.html
2019/06/20 3:31 | Salorito

# juicy couture short tracksuit
74207095

Tory Burch shoes are produced by distinguished producers which use their superb ability jointly with ingenuity in addition to manner. The sneakers ended up made michael kors ipad conditions to setup ladies of all measurements along with age assortment and types. They commonly are conveniently obtainable in many unique products, kinds, hues alongside one another with designs. These footwear definitely can be a should really have for virtually any woman specifically who beliefs system and magnificence, in relation to placing on footwear. Alice Bevan can be a world wide web purchasing newbie, she in fact is extremely troubled identical to tory burch sale made web site. So as to come across out extra with regards to tory burch inshore relogio michael kors information, you can go to the site. But another girls purse by Tory Burch can be the Tory Burch accesories. They are supplied around dolled up in a lot of products, ensign, designs and dimensions. If you wish to situation previous never lik from the team it's best to happen shipping and delivery and shipping womens handbags by Tory. The largesta infant Mountain View classes collage web site in the vicinity of 13 million excellent people portion of the hand luggage are made from normal leather-based, fabric, web page, hair, denim jeans and also other methods. They?ユ?e pain-free on bearing and intensely cozy to be able to tote your whole necessary objects. It truly is achievable to physical exercise these kind of hand bags with respect to your a number of features much like days, events and all kinds of varieties of get togethers occur concerning the plan starched or else everyday. It is possible to furthermore like from the pretty ornamental totes which consequently say adornment crafted from gemstones, sewing, artworks, crimson flags, bows, switches and all of that. As a result whichever would be the smartness you truly choice arrive at pass able to uncover maintain of a definative purse to suit your wants.Uncover Tory Burch accesories testimonies, jordan kors timepieces selling cole haan sneakers

Accessible in an incredible number of designs and colors, women?ユ獨 superior heel sandals may be just like a new quick-fix to any clothing. Moreover they research superior, nonetheless higher heel shoes similarly improve the biomechanics of a individual although incorporating helpful inches width in an effort to the lady eileen kors men designer watches out there available for sale peak. The long-legged glimpse prepared by women?ユ獨 large heel sandals is always to be common with regards to, coupled with the look and magnificence quotient. Substantial heel pumps may be complex together with simple workplace sends, or maybe cute, sizzling dress pushes, sling-backs, in addition to flip flops. Not simply are these promises easy but will likely quite crucial. Make full use of the listing of buyers which often you have got bought compiled to supply presents, and new releases you could potentially provide you with any more income. You'll have just produce persons potential buyers tips furthermore to information michael kors outlet miami regarding your income.

Most do the job footwear or boots come in african american, brownish, grey, along with rarely with reddish colored as well as orange. There are some possibilities for colours having said that they normally go perfectly with skinny denims as well as trousers everyone have on. On top of that, in the event michale kors you might be worried with the way you could test accomplish boots, up coming decide on great Himalayan buckskin footwear that you choose to could put on truly exterior your position. Do the job boots don?ユ? look far far too fundamental and even straightforward mainly because companies have tailored these telephones match the flavour of favor informed wearers. Thoroughly, complete boots are not only supposed for people and experienced web-sites. Try out on some these men and women even when hanging out therefore you could be pretty amazed from just how practical they're usually. Footwear utilizing metallic wander in shape shoe inserts can seem following you jordan kors wrist watches arkansas sharpened physical objects which can minimize together with the major on top of that to damage the foot or so. Also, safe and sound tactics execute sneakers guard the foot via protrusions which may bruise or possibly split your personal toes and fingers. Picking out superior shoes at times is usually very a predicament. This can be absolutely typically to the reason that while in the a number of distinct types of footwear to choose from. Acquiring stated that, the extremely to start with matter you should contemplate when acquiring economical Tom?ユ獨 footwear sale is strictly what type of sneakers you'd like. This can guide you to definitely get footwear that ought to match up making use of your wardrobe significantly much better. This could certainly be a wonderful impediment to plenty of. It really is because of this which you will be pretty encouraged to to get started on with established down the kind of sneakers you are looking for. Thereafter, pay out a visit into the website and sample out the several varieties of footwear offered. Continue to keep in your mind the value factor.

The good make a difference is often that shoe premiums at cheaptomsshoes.ca are rather reasonably priced or pocket pleasurable. This presents you an opportunity to own any sort of sneakers you would like. All sorts of sneakers are offered from younger youngsters sneakers, men?ユ獨 sneakers to women?ユ獨 footwear. In addition there are types to contemplate. These also range from leather-based sneakers, rubber sneakers, training footwear, trainers, sports activities sneakers and workplace sneakers amongst a lot of quite a few many others. It might be therefore safe to convey that cheaptomsshoes.ca is usually a 1 prevent buy shoe searching. The most effective aspect is usually that you simply have the ability to do your searching on the net. All browsing will probably be transported great to the deal with provided inside the supplied stretch of time.

https://cheapprada.shopinfo.jp/posts/4563545
https://cheapprada.amebaownd.com/posts/4563521
https://cheapprada.shopinfo.jp/posts/4563540
https://cheapprada.shopinfo.jp/posts/4563543
https://cheapprada.shopinfo.jp/posts/4563549
http://cheappradabags.freeblog.biz/2018/07/18/reasons-powering-the-success-of-tote-bags-in-model-promotion/
http://cheappradabags.blog.fc2blog.us/blog-entry-50.html
http://cheappradabags.mex.tl/blog2/titulo_de_la_entrada0123456789101112131415161718192021222324252627282930313233343536373839404142
http://cheappradabags.freeblog.biz/2018/07/18/tips-about-the-best-way-to-get-your-provider-baggage-being-strolling-adverts-to-suit-your-needs/
http://cheappradabags.blog.fc2blog.us/blog-entry-49.html
2019/06/30 20:13 | Salorito

# juicy couture online
527308681

Large style residences for example Burberry and D&G, however, have minimized styling of men's don collection because of the credit crunch, they have faced all around the world. This is the reason we are not observing any new entrants while in the accessories section apart in the brooches which seem to be something new this time. Overall, summer time collections take you on for the ride of history, way back to the days of World War II, even though the Gothic Ninja type statement reminds us of the pirates and captains of yesteryear. Suiting variations change too slowly in men's wear. But this 12 months there are slight changes in this category as one can observe a move away in the monochromatic thin lines and cuts to more adventurous masculine types. Features like broad shoulders with a slim waist worn above slim trousers are in. Popular patterns include Houndstooth, Prince of Wales Check Herringbone, Pinstripe and Rope stripe.

As far as the colors are concerned, for once men's summertime clothing has a wide variety to offer ranging from dark strict tones to bright elegant hues, especially Givenchy, Jill Sanders, Gucci's and McQueen's lines have all these features. For more formal or I would rather say for posh parties, dinner jackets in satin shawl, satin stripe, and satin notched and peaked lapels are up this period. Let me give you one ideal tip to choose the ideal according to your skin tone and season. If you are blond, a redhead or have a paler complexion go for darker shades which include, navy blue, black and dark brown. Whites, yellow and light colors will make you look paler and too white to digest. On the other hand, if you are dark, you are lucky to have a variety of colors to choose from. Darker skins are compatible with almost all colors, except for dark brown or the dull shades of different colors, as they are going to let your gorgeous color down.

We can also see a comeback of vests in summer manner. The types of fabrics generally used by D&G and Moschino and others are satin, jersey and wool this season. The wide pants that gown well over any possible design is a must-choose this time. You can use them over classic jackets as well as the contemporary clinging tops. Even if you use it with casual shirts, trench coats and turtleneck tees, you will be among the first ones to initiate the idea!

Coats, however, remained the same as always have been, sold out in long trench, short trench, and double-breasted styles. The Gothic Ninja type as stated above is the latest craze across the globe! Yes, throughout the world the figure hugging black outfits are the hottest pick among the teens and slightly grownups. An American Apparel Tee shirt worn under any top or a Rick Owens knit garment, covered by a Martin's coat, figure hugging bottom with Dior Home 17 cm jeans on the bottom is a type statement for younger ones. Cheap silver add-ons mixed with expensive Number 9 leather boots are the additions for summer season styling.

http://www.dasbug.com/pin/mcm-claus-reversible-belt-in-black/
http://www.dasbug.com/pin/mcm-small-stark-m-studs-visetos-backpack-in-washed-blue/
http://www.juxtapost.com/site/permlink/ef38cda0-8673-11e9-a8bb-35f319eb765a/post/mcm_claus_reversible_belt_in_black/
http://www.juxtapost.com/site/permlink/edbf0f90-8673-11e9-9462-39baabe3e10e/post/mcm_small_stark_m_studs_visetos_backpack_in_washed_blue/
http://ie-colle.com/pin/4703/
http://arhimania.ro/pin/mcm-claus-reversible-belt-in-black/
http://stygoogle.com/mcm-small-stark-m-studs-visetos-backpack-in-washed-blue/
https://directory.company.com/business/view/mcm-claus-reversible-belt-in-black
https://potuks.com/pin/mcm-small-stark-m-studs-visetos-backpack-in-washed-blue/
https://stylowi.pl/55669207
2019/07/10 8:43 | Salorito

# If you are going for most excellent contents like me, simply go to see this site daily since it provides feature contents, thanks

If you are going for most excellent contents like me, simply go to see this
site daily since it provides feature contents, thanks

コメントの投稿

タイトル
名前
URL
コメント