OSDN Git Service

TweetThumbnail内の不要なロックを除去
authorKimura Youichi <kim.upsilon@bucyou.net>
Mon, 16 Jun 2014 05:26:42 +0000 (14:26 +0900)
committerKimura Youichi <kim.upsilon@bucyou.net>
Mon, 16 Jun 2014 16:04:40 +0000 (01:04 +0900)
同一スレッド (UIスレッド) 上で動作することが保証されているためロック不要

OpenTween/TweetThumbnail.cs

index 7e0e5b2..5ac30a3 100644 (file)
@@ -74,35 +74,33 @@ namespace OpenTween
 
             cancelToken.ThrowIfCancellationRequested();
 
-            lock (this.uiLockObj)
-            {
-                this.SetThumbnailCount(thumbnails.Length);
-                if (thumbnails.Length == 0) return;
-
-                for (int i = 0; i < thumbnails.Length; i++)
-                {
-                    var thumb = thumbnails[i];
-                    var picbox = this.pictureBox[i];
+            this.SetThumbnailCount(thumbnails.Length);
+            if (thumbnails.Length == 0)
+                return;
 
-                    picbox.Tag = thumb;
-                    picbox.ContextMenuStrip = this.contextMenuStrip;
+            for (int i = 0; i < thumbnails.Length; i++)
+            {
+                var thumb = thumbnails[i];
+                var picbox = this.pictureBox[i];
 
-                    var loadTask = picbox.SetImageFromTask(() => thumb.LoadThumbnailImageAsync(this.http, cancelToken));
-                    loadTasks.Add(loadTask);
+                picbox.Tag = thumb;
+                picbox.ContextMenuStrip = this.contextMenuStrip;
 
-                    var tooltipText = thumb.TooltipText;
-                    if (!string.IsNullOrEmpty(tooltipText))
-                    {
-                        this.toolTip.SetToolTip(picbox, tooltipText);
-                    }
+                var loadTask = picbox.SetImageFromTask(() => thumb.LoadThumbnailImageAsync(this.http, cancelToken));
+                loadTasks.Add(loadTask);
 
-                    cancelToken.ThrowIfCancellationRequested();
+                var tooltipText = thumb.TooltipText;
+                if (!string.IsNullOrEmpty(tooltipText))
+                {
+                    this.toolTip.SetToolTip(picbox, tooltipText);
                 }
 
-                if (thumbnails.Length > 1)
-                    this.scrollBar.Enabled = true;
+                cancelToken.ThrowIfCancellationRequested();
             }
 
+            if (thumbnails.Length > 1)
+                this.scrollBar.Enabled = true;
+
             if (this.ThumbnailLoading != null)
                 this.ThumbnailLoading(this, EventArgs.Empty);